tft每日頭條

 > 圖文

 > 怎麼錄屏制作gif

怎麼錄屏制作gif

圖文 更新时间:2024-06-18 21:03:15

小輕快、可直接播放的 GIF 小動畫很适合嵌入圖文。

但是很多圖文編輯器複制粘貼 GIF 圖像都會出現問題。例如粘貼GIF 變成一幀靜态圖像,或提示無效圖像,或粘貼正常但發布上傳時報錯 …… 然後我們隻能挨個 GIF 都重複一遍:錄屏 > 壓縮 > 保存 > 添加圖像 > 上傳 > 插入文章 ……

使用極簡錄屏軟件 Gif123 可以大幅簡化上面的操作:Gif123 可以一鍵錄屏,一鍵複制動畫,在圖文編輯器裡 Ctrl V 一下粘貼動畫就可以解決所有問題。Gif123 複制的 GIF 格式擁有良好的兼容性,不會動畫變靜态圖像,不會提示無效圖像,上傳時不會報錯。

Gif123 簡介

Gif123 是一個開源軟件,體積很小隻有 755KB,獨立 EXE 無任何外部依賴,兼容 Windows XP,Vista,Win7,Win8,Win10,Win11 …… 等所有流行桌面操作系統。

怎麼錄屏制作gif(極簡錄屏一鍵粘貼)1

軟件極簡單,隻有 3 個主要按鈕:錄制、預覽、複制。

Gif123 主窗口就是錄屏選框,可拖動選框選擇要錄制的區域。相比很多更複雜更強大的 GIF 錄制工具,Gif123 的操作非常簡單,一看就會。

Gif123 雖然很小,但是在 GIF 有限的顔色限制下仍然可以顯著提升畫質。錄制完成以後可自動調用強悍的 Gifsicle 壓縮 GIF 文件體積。并且在高分屏下可自動壓縮 GIF 至正常分辨率 —— 以避免浏覽圖像時重複放大。

Gif123 可錄制合成鼠标軌迹,可調整鼠标指針大小,可在設置中打開鼠标指針高亮光圈功能,高亮光圈可跟随鼠标移動以指示鼠标位置,單擊鼠标時會顯示動畫光圈( 光圈顔色透明度為0 時僅顯示單擊動畫 ):

怎麼錄屏制作gif(極簡錄屏一鍵粘貼)2

按左鍵光圈就會向左側壓縮成半圓,按右鍵光圈就會向右側壓縮成半圓,按中鍵就會向内側縮小為小圓。很多錄屏軟件僅用顔色區分左右按鍵 —— 說實話這可能隻有錄屏的人明白,看動畫的人估計分不清。

Gif123 最小化時按錄屏熱鍵可顯示快速選框:

怎麼錄屏制作gif(極簡錄屏一鍵粘貼)3

切換到預覽模式且暫停後可編輯動畫幀,在預覽動畫上點右鍵可彈出菜單,可以暫停動畫幀( 在圖像上按回車可以快速「暫停 / 繼續」播放動畫 ),動畫暫停狀态下可以使用鼠标滾輪、幀滑塊控件、Page Up/Down ……等手動翻頁,暫停狀态可以方便地抽幀删幀。

怎麼錄屏制作gif(極簡錄屏一鍵粘貼)4

預覽模式可在上圖界面底部的輸入框中重新設置優化參數。在參數輸入框中點任何一個參數的任何位置,按鼠标滾輪可以快速調整數值,如下圖:

怎麼錄屏制作gif(極簡錄屏一鍵粘貼)5

可實時預覽優化效果與優化後的文件體積。重新優化總是基于原始圖像 —— 上次優化設定不會影響當前優化效果。

我為什麼要開發 Gif123

Gif123 是我使用 aardio 開發的。至于 aardio 也是我開發的編程語言。關于 aardio 請參考文章:2022年,開發獨立 EXE 桌面應用程序,用什麼語言、技術合适

GIF 還是非常有用的,很多時候我們需要這種小、簡單、不複雜又夠用的東西。GIF 錄屏的工具雖然很多,但是用着用着有時候就發現不需要的功能很多,需要的功能它又沒有或者不方便,所以我決定自己用 aardio 寫一個,實際上要不了幾句代碼。

開發經驗分享:揭開剪貼闆的秘密

GIF 錄制好了,我們一般當然是複制并分享了,如果我們打開圖像再去複制還是有些麻煩,能一鍵複制多好。但是這個看起來簡單的事 —— 還真是有些麻煩,首先系統剪貼闆其實并不支持 GIF 圖像,所以很多軟件裡複制 GIF 隻複制了第一幀。

但是我們發現 IE 是可以複制GIF的,有的文章說通過複制HTML就可以了,用 aardio 來寫實際上就是這樣:

import win.clip.html; var html = win.clip.html(); html.write(`<img src="c:\test.gif" />`)

網上很多文章都這麼寫,但實際上根據我的測試,這樣複制 GIF 以後浏覽器或者其他一些軟件裡并不能粘貼。

這個其實可以理解,浏覽器是沒有權限訪問本地文件的,即使他得到了剪貼闆中的HTML,也沒有權限去讀任意位置的本地文件,考慮到了這一點,我決定把本地圖像轉換為 Data URL 直接嵌入HTML,主要代碼如下:

import win.clip.html; import crypt; var html = win.clip.html(); var dataUrl = string.format('data:image/gif;base64,%s' ,crypt.encodeBin( string.loadBuffer(filePah),,0x40000001/*_CRYPT_STRING_BASE64*/) ); html.write(`<img src="` dataUrl `" />`,,false);

上面的代碼實現了以後,我在浏覽器圖文編輯器裡測試了一下,用這種方法複制一個 GIF 文件以後,再到編輯器裡 Ctrl V 粘貼,看到了 GIF 動畫在編輯器裡顯示出來了,還沒高興零點幾秒,彈出一個錯誤信息:粘貼圖像失敗。看了一下是遠程錯誤,猜測他把這個當作普通遠程圖像地址去處理了。

然後在其他聊天軟件裡試着粘貼了一下,也沒任何反應。看來此路不通。看到有人說可以複制為 CF_HDROP 格式,好吧,aardio 幹這事倒也方便,代碼如下:

import win.clip.file; win.clip.file.write( filePath );

其實這等價于在資源管理器裡右鍵複制文件。用上面的方法複制了圖像以後,到聊天軟件裡粘貼試了一下,粘貼出來的是一個文件圖标,并沒有認出是 GIF 動畫。

想起之前看到有人說:

IE 能複制 GIF,但是在剪貼闆裡看到的隻是靜态的 BMP 圖像,不知道 IE 是如何實現的,

難道 ……

于是試着在剪貼闆裡先複制 GIF 第一幀的靜态圖像,再複制文件本身(同時複制2種格式),用這種方法複制了一個 GIF 圖像,然後到 聊天工具裡粘貼,這回粘貼出來的還真是 GIF 動畫 ,直接就顯示預覽動畫了 —— 完美!

然後打開浏覽器編輯器,試着粘貼了一下,遇到2種不同的反應,第1種是出現了靜态圖像 —— 沒動畫,第2種是靜态圖像也沒有,細節沒有深究。想起之前複制 Data URL 失敗的過程,這難道是 …… 于是趕緊換第 3 種方法,複制第一幀靜态圖像,複制文件,然後再複制 Data URL ,一氣呵成三連擊以後終于成功了,浏覽器編輯器裡完美粘貼出來 GIF 動畫,試了很多軟件以及圖文編輯器也都能完美支持。

于是,我又加了一個庫 win.clip.gif,用起來就太簡單了:

import win.clip.gif; win.clip.gif.write( filePath );

您看這就是 aardio 的好處了,像這種庫一天能寫一打出來,再複雜的代碼都可以簡化,這得益于 aardio 良好的模塊化支持。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved