[!INFO] 需求
把多篇筆記的全部或部份內容彙集、編纂成一個檔案,方便閱讀或輸出成PDF
1. 範例
- 內嵌筆記檔案可以附加
#
只顯示特區段,或用^
顯示特定區塊(Block)
# Obsidian學習筆記本-輸出PDF ## 1. Markdown語法 ![[用Obsidian學會Markdown]] ## 2. Obsidian使用介面 ![[Obs#02 Obsdian的基本操作指引]] ## 3. Obsidian CSS彙總 ![[Obsidian CSS Notes]] ## 4. Obsidian Plugin彙總 ![[Obsidian Plugins Notes]]
2. 彙編的方法
- 範例
# test2 ![[test3]] ![[test4]]
2.1. 方法1-Compile Notes外掛
- 尚未上架,手動安裝或使用BRAT安裝
- 優點:有選項設定能略過YAML區內容
- 缺點:
- 要讀取的檔案必須在同一個資料夾
- 彙編後的筆記是固定內容,來源檔後來的異動不會影響已產生的檔案
- 無法指定特定區段或區塊
- 使用方法:
- 用
![[筆記名稱]]
指定要讀取的檔案 - 按〔Ctrl+P〕→執行【Compile notes into one】
- 用
2.2. 方法2-Dynamic Embed
- 由第三方外掛安裝
- 優點:動態內容,彙總筆記隨來源內容變動
- 缺點:
- 沒有選項設定
- 只能整個檔案輸出(包含YAML區),無法指定特定區段或區塊
- 使用方法:使用程式碼區塊
[!REF] 語法
```dynamic-embed ![[筆記名稱]] ```
2.3. 方法3-CSS片段
這是目前我建議的方法。
3. CSS片段
一樣是使用Obsidian的內嵌檔案語法,以![[筆記名稱]]
指定要讀取的檔案,但有下列幾個重點要注意。
[!QUESTION] 問題
1. 有些主題會設定內嵌區塊的高度,筆記內容較多時會出現捲軸
2. 自訂CSS片段若設定內嵌區塊高度,會影響PDF格式
預設的Obsidian主題CSS會設定內嵌區塊高度:
.markdown-embed-content { max-height: 600px; overflow: auto; }
Blue Topaz主題:
--embed-content-height: 600px; body.adjustable-embed-content-height :is(.markdown-preview-view,.markdown-rendered) .markdown-embed-content { max-height: var(--embed-content-height); max-width: 100%; overflow: auto; }
4. 新增embeds-full.css片段
4.1. 設定
在儲存庫資料夾/.obsidian/snippets/裡建立embeds-full.css,內容如下:
.embeds-full .internal-embed.is-loaded .markdown-embed .markdown-embed-content { max-height: unset !important; } .embeds-small .internal-embed.is-loaded .markdown-embed .markdown-embed-content { max-height: 350px !important; }
embeds-full.css定義了兩個CSS類別:
- embeds-full: 無高度設定
- embeds-small: 設定高度為350px
4.2. 使用
- 在要套用的筆記YAML區加上cssClass,讓筆記裡的內嵌區塊高度變小並出現捲軸:
--- cssClass: embeds-small ---
- 在要套用的筆記YAML區加上cssClass,讓筆記裡的內嵌區塊出現全部內容:
--- cssClass: embeds-full ---
5. 匯出PDF
若匯出的PDF內嵌區塊未出現全部內容,則檢查CSS片段是否有設定內嵌區塊高度造成此狀況。
6. 相關鏈接
7. 教學影片
##
想在手機閱讀更多周邊設備資訊?下載【香港矽谷】Android應用 