編注:本文為少數(shù)派 Prime 會(huì)員的試讀文章,少數(shù)派會(huì)員第一季的內(nèi)容更新已于 5 月底順利結(jié)束。目前,第二季會(huì)員 即將正式上線,你可以隨時(shí)前往少數(shù)派首頁(yè)購(gòu)買(mǎi)。
作為公眾號(hào)運(yùn)營(yíng),從我派首頁(yè)往公眾號(hào)后臺(tái)搬運(yùn)文章的時(shí)候總會(huì)遇到一個(gè)問(wèn)題:公眾號(hào)后臺(tái)不兼容首頁(yè)編輯器制作的拼圖。我過(guò)往的解決方案是將需要拼接的圖片拖拽進(jìn) Yoink,再一次性拖入 Tunacan 拼圖保存。

用 Tunacan 拼接圖像
雖然聽(tīng)起來(lái)挺方便的,但這個(gè)方案還是有一些不足之處:
一次性拖入時(shí),拼圖順序與 Yoink 排列順序相反;
切換拼圖方向、保存拼圖都需要手動(dòng)操作;
會(huì)在本地生成一張圖片,需要手動(dòng)刪除。
于是,在某個(gè)早晨手動(dòng)拼了半小時(shí)圖片后,我決定試試快捷指令能否解決這一問(wèn)題。經(jīng)過(guò)十分鐘的折騰之后,我不但解決了上面所有問(wèn)題,甚至還加入了自動(dòng)識(shí)別拼圖方向、自動(dòng)清除圖片的功能。

用快捷指令拼接圖像
注:本文的方法用到了 Yoink,如果你沒(méi)有購(gòu)買(mǎi) Yoink,也可以在程序塢新建一個(gè)文件夾作為臨時(shí)存儲(chǔ)所用,并在快捷指令用相關(guān)動(dòng)作來(lái)替換。
▍快捷指令邏輯
這個(gè)快捷指令的邏輯非常簡(jiǎn)單,只是簡(jiǎn)單的 獲取要拼接的圖像 > 拼接圖像 而已。得益于 Yoink 對(duì)快捷指令的支持,我可以直接在快捷指令中調(diào)用 Yoink 所存儲(chǔ)的項(xiàng)目,利用自帶的「拼接圖像」功能完成拼接后,再存儲(chǔ)至 Yoink 即可。

核心動(dòng)作只有 4 個(gè)
在日常拼圖的時(shí)候,圖片的尺寸未必完全相同。因此,我還加上了對(duì)圖片尺寸的調(diào)整功能。我的做法是獲取首張圖片的長(zhǎng) / 寬,并將所有的圖片對(duì)應(yīng)調(diào)整。也就是說(shuō),如果是豎排拼接的話,它就會(huì)自動(dòng)調(diào)整圖片寬度至首張圖片的寬度;水平拼接則會(huì)調(diào)整高度。
聽(tīng)起來(lái)有點(diǎn)繞,但整體的邏輯是以首張圖片的尺寸為標(biāo)準(zhǔn),調(diào)整所有圖片。如果不這么做的話,在拼接不同尺寸圖片時(shí),邊緣就無(wú)法對(duì)齊,從而產(chǎn)生丑陋的白邊。

如果不調(diào)整圖片大小,就會(huì)有丑陋的白邊
在使用時(shí),我只要按照拼接順序?qū)D片拖拽進(jìn) Yoink,隨后按下快捷鍵,再在彈出窗口中全選圖片,即可完成拼圖。快捷指令會(huì)自動(dòng)清空 Yoink 內(nèi)容并將拼接好的圖片加入進(jìn)去。
如此一來(lái),我們就已經(jīng)解決了「需要手動(dòng)拼接」的問(wèn)題。受限于快捷指令與 Yoink 的協(xié)作機(jī)制,暫時(shí)無(wú)法做到「自動(dòng)獲取圖片」和「只清除已拼接的圖片」的效果,但相比于手動(dòng)拼接來(lái)說(shuō),它的效果還是非常不錯(cuò)的。

照片選擇步驟暫時(shí)無(wú)法跳過(guò)
01 自動(dòng)判斷拼接方向
在實(shí)際的拼圖過(guò)程中,我們可能會(huì)遇到一些比較復(fù)雜的問(wèn)題。比如兩張電腦桌面的截圖,如果橫向拼接的話,就會(huì)導(dǎo)致圖片小得幾乎看不清。因此,我們還應(yīng)該考慮快捷指令能否「判斷方向」的問(wèn)題。
雖然利用「如果」· 動(dòng)作可以非常輕松地實(shí)現(xiàn)條件判斷,但我們?nèi)孕枰紤]什么情況下需要切換拼圖方向。
我首先想到的是獲取照片的「方向」進(jìn)行判斷:橫向照片豎排拼接,縱向照片水平拼接。這樣會(huì)導(dǎo)致 4:3、3:2 這樣常見(jiàn)的照片比例會(huì)被豎排拼接,而我希望將這些照片以橫向拼接的形式呈現(xiàn)。
因此,我最后選擇的方案是計(jì)算首張照片的長(zhǎng)寬,并將短邊相拼。做法則是將寬度乘以 0.5,并與高度進(jìn)行對(duì)比。這里之所以用乘 0.5 而不是除以 2,是因?yàn)榉奖氵M(jìn)行靈活修改,如果在使用過(guò)程中,發(fā)現(xiàn)某些情況下沒(méi)有正確拼接,只需要調(diào)整為 0.45、0.57 這樣的數(shù)字即可,不需要重新計(jì)算除數(shù)。

用計(jì)算來(lái)判斷圖片拼接方向
02 讓快捷指令「一魚(yú)多吃」
相信熟悉少數(shù)派的朋友都知道,我們向來(lái)鼓勵(lì)作者通過(guò)飛書(shū)文檔向我們提交稿件。然而,飛書(shū)文檔的圖片是無(wú)法直接拖拽到 Yoink 的。我平時(shí)的做法是「右鍵 > 在新標(biāo)簽頁(yè)中打開(kāi)圖像」。但在 Safari 中,這樣的做法會(huì)出現(xiàn)兩種結(jié)果:
圖片被自動(dòng)下載到「下載」文件夾中;
圖片在新標(biāo)簽頁(yè)中打開(kāi)。

飛書(shū)云文檔不支持拖拽圖片至 Yoink
這兩種情況出現(xiàn)的概率比較隨機(jī),即使我有了這個(gè)快捷指令,想要給飛書(shū)文檔中的圖片做拼圖還是很麻煩。于是,我對(duì)這個(gè)快捷指令進(jìn)行了簡(jiǎn)單的改造,讓它可以實(shí)現(xiàn)「一魚(yú)多吃」的效果。
首先,我在快捷指令的設(shè)置中為它勾選了「作為快速操作使用」中的「訪達(dá)」。如此一來(lái),當(dāng)我選中多張本地圖片后,前往「右鍵菜單 > 快速操作」即可看到這個(gè)快捷指令。

開(kāi)啟此功能后,快捷指令的編寫(xiě)界面就會(huì)出現(xiàn)「從快速操作接收任何輸入」的提示,將「任何」改為只勾選圖像,新增一個(gè)「如果」判斷。如果有輸入的內(nèi)容,就執(zhí)行一遍拼接操作,并用「停止并輸出」功能來(lái)中斷快捷指令,不運(yùn)行后續(xù) Yoink 相關(guān)的操作。

如果選擇了文件,就直接拼合
如果沒(méi)有輸入的內(nèi)容,則會(huì)跳過(guò)這個(gè)判斷,直接運(yùn)行下方 Yoink 動(dòng)作。

如果沒(méi)選擇文件,就從 Yoink 拼合
簡(jiǎn)單改造過(guò)后,飛書(shū)文檔里的圖片只需要通通選擇下載,再到「下載」文件夾里選中需要拼接的圖片,隨后在「右鍵菜單 > 快速操作」運(yùn)行該指令即可。這樣一來(lái),除了可以拼合 Yoink 中的圖片,甚至還可以對(duì)本地圖片進(jìn)行加工,非常方便。

一 魚(yú) 兩 吃
▍擴(kuò)展用法
這個(gè)快捷指令已經(jīng)可以滿足我對(duì)于拼圖的需求,并且理論上支持無(wú)限張圖片拼接。配合上 Keyboard Maestro 先前更新的快捷指令功能,甚至還可以增加更多的玩法。
比如,你可以在快捷指令中將最后一步修改為「拷貝至剪貼板」,隨后在 Keyboard Maestro 中執(zhí)行一次「 Command - V」。如此一來(lái),就能一鍵將需要的圖片拼接并粘貼。如果你平時(shí)喜歡在各種論壇發(fā)帖,你甚至可以在拼接完成后,讓快捷指令「獲取 URL 內(nèi)容」里的 POST 功能幫你上傳至圖床,并自動(dòng)將圖床鏈接拷貝至你的剪貼板。
總而言之,這個(gè)快捷指令更像是滿足「拼圖」需求的一塊磚,你完全可以根據(jù)自己的需求對(duì)其進(jìn)行優(yōu)化擴(kuò)展,實(shí)現(xiàn)更加高效的動(dòng)作。
原文地址:http://www.myzaker.com/article/62df73cfb15ec01c2566173e
轉(zhuǎn)載請(qǐng)注明:在 macOS 上一鍵拼圖,你只需要一個(gè)快捷指令 | 快導(dǎo)航網(wǎng)







川公網(wǎng)安備51012402001058號(hào)