整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          draw-a-ui:基于tldraw和gpt-4-vision API生成HTML

          過使用tldraw和gpt-4-vision API,根據用戶繪制的線框生成HTML,在Next.js框架下運行,使用OpenAI API密鑰訪問GPT-4 Vision API

          官網:https://www.draw-a-ui.com/

          Github: https://github.com/SawyerHood/draw-a-ui

          周在給學生講授JavaScript課程中setInterval方法時,想到了我們在網上看到的各類GIF動圖比較有意思,就將其引入到教學中,教學內容設計如果通過HTML5與JavaScript實現網頁類似GIF效果的動態圖。于是在網上搜集了部分gif格式動圖,將每一個Gif動圖分解為一組jpg格式圖片,再采用setInterval與html5 Canvas進行動畫的實現。通過學習可以讓學生進一步了解canvas動畫實現的過程與原理。并將其發布到頭條,也希望對有興趣的初學者了解HTML5 Canvas等有所幫助。圖片分組圖片素材如下:

          素材一

          實現動畫的素材我們已經給出,主要通過gif動圖導出一組圖片,下面對html5動畫實現過程進行簡單說明。


          基本思路

          實現其動畫的基本思路是通過HTML5提供的canvas元素進行圖片的繪制與展示,借助setInterval方法實現間隔指定時間調用新的圖片實現重新繪圖。其中繪圖主要使用drawImage方法進行繪圖,最終通過圖片依次重繪實現動畫效果。具體實現過程如下:

          HTML5 Canvas設置

          在頁面body部分添加Canva標簽,設置其id屬性為canv,寬度為600,高度為400,編寫代碼描述如下圖:

          添加畫布元素

          canvas瀏覽效果

          加載圖片資源

          使用Canvas借助JavaScript提供的drawImage方法進行繪圖,需要提供要繪制的圖片資源即繪圖的坐標位置。該方法原型如下:

          drawImage方法原型

          因此我們需要加載圖片資源,本例由于需要調用多個img實現定時不同圖片的繪制,因此我們可以使用數組存儲所加載的圖片資源。本例圖片數量為14,因此我們數組長度為14。使用素組存儲圖片實現代碼如下:

          加載圖片資源代碼

          定義頁面加載事件onload

          本例設計在頁面加載時自動播放動畫,因此需要在JavaScript腳本中添加頁面onload事件,在事件中編寫繪圖相關代碼,主要代碼包括獲取畫布canva與實例化繪圖對象context。部分代碼描述如下:

          onload事件及繪圖初始化

          使用setInterval實現動畫

          使用setInterval方法實現動畫主要需要定義回調函數與回調函數觸發執行的周期,本例中我們使用匿名函數作為回調函數,觸發周期設置為100毫秒。setInterval函數定義如下:

          setInterval函數

          在定義完函數之后可在其匿名函數函數體部分寫入繪圖方法dramImage(),實現周期調用不同圖片資源進行繪圖,最終展示出動畫效果。為了保證循環調用14張圖片,我們需要設置一計數全局變量i,由于我們圖片采用數組存儲,下標為數組,且從0-13進行編號,因此當計數值小于13時自動+1,指向下一數組下標,當為13時,設置計數值為0,回到數組第一元素,最終實現數組訪問下標的循環。setInterval實現完整代碼如下:

          setInterval完整代碼

          實現效果展示


          HTML動畫效果展示


          本頭條號長期關注編程資訊分享;編程課程、素材、代碼分享及編程培訓。如果您對以上方面有興趣或代碼錯誤、建議與意見,可以聯系作者,共同探討。期待大家關注!如需案例完整代碼請關注并私信,往期前端設計文章鏈接如下:

          1. 前端設計-JavaScript中的值、引用傳遞與垃圾回收
          2. 前端設計-JavaScript美女拼圖游戲開發實例
          3. 前端設計- JavaScript驗證碼制作及實例分析
          4. 前端設計-Ajax技術及實例展示
          5. 前端設計-響應式頁面開發基礎
          6. Web開發前端、后端與全棧的區別是什么?

          rawio是一款強大的圖表繪制軟件,支持在線云端版本以及windows, macOS, linux安裝版。 如果想在線直接使用,則直接輸入網址draw.io或者使用drawon(桌案), drawon.cn內部完整的集成了drawio的所有功能,并實現了云端存儲,以及在線共創,分享,協作的功能。

          看板能夠把大項目,大工程拆解成一個個的小的任務,你也可以設置優先級,跟進他們的完成情況。 通過看板可以在項目協作過程中獲得更多的好處。看板能夠幫助每個人可視化工作流, 項目的狀態,以及當前的工作負載。

          看板是一種方法論, 或者一個系統, 通常被用于項目管理,產品經理,敏捷開發,或者系統開發工程師,設計師和內容營銷人員。 幾乎所有的商業領域都會使用這個方法去跟進工作, 識別瓶頸, 改善過程。

          你可以使用不同的方式,畫一個遠程的看板,然后一起去協作——你也不必使用簡單的看板模板,如下所展示。 你可以使用簡單的粘性貼紙類的圖形,使用不同的顏色的矩形, 列舉元素, 實體表格圖形——以你便捷舒服的方式去使用。

          然而, 在drawio或者drawon中,簡單的看板模板在繪制中。 將根據任務所在的列(泳道或狀態)自動為任務上色,并相應地更新標簽文本。

          使用看板模板

          插入簡單的看板模板

          1. 選擇調整圖形——>插入——>模板,從drawon或者drawio的菜單中,或者點擊工具欄上的“+”, 選擇模板。
          2. 在基本模板庫中,選擇簡單的看板模板, 點擊插入:

          注意,你不能限定看板只有三列數據,列可以動態根據需求添加。 模板使用泳道(列)自定義的圖形屬性去設置標簽文本和泳道的顏色。

          添加和移動任務

          1. 鼠標滑過其中之一的任務,在對應的列上, 會看到方向箭頭, 點擊它, 一個新的任務將被在對應的方向上被添加,之前的任務標簽被拷貝到新的任務上。
          2. 雙擊新的任務,編輯任務的名稱。 注意: 不要編輯%status的標簽——下面的章節中, 學習更多關于這個占位符的用途。
          3. 可以把任務,從一列拽到另外一列, 去改變狀態和展示他們在工作流中的位置。

          刪除任務:選擇任務, 按下Delete偶然 Backspace鍵

          在看板上表決并設置優先權

          團隊可以遠程的工作,并在看板上進行協作。 增加外部的網站連接,或者文檔, 或者增加連接到其他圖表頁面, 表決并設置優先級。

          • 按住Alt鍵可以覆蓋看板上的形狀,例如在確定優先級或對下一個任務進行投票時。
          • 為了讓你的看板更具可讀性,選擇所有的投票/別針形狀,進入格式面板上的“調整圖形”選項卡,然后點擊“到前面”,以確保它們在你的任務上方可見。

          在看板上增加新一列

          1. 選擇列(其中一個泳道)鼠標滑過邊沿可以看到方向箭頭。
          2. 點擊方向箭頭在對應的方向上增加新列。

          刪除列: 選擇列(泳道), 點擊Delete或者Backspace

          在列上改變任務的顏色

          任務的顏色會去匹配泳道的填充色,

          1. 選擇列(泳道), 接下來在風格面板選擇填充色。 或者在調色板選擇新的顏色,點擊應用。

          在任務標簽上改變狀態文本

          如上面所屬, 狀態文字在簡單的看板上是一個占位符。 當你在一個任務上選擇文本, 你可以看到文字status會被百分比符號包圍: %status%

          在泳道的自定義屬性中, 文本會被代替。

          1. 選擇列(泳道), 按下Ctrl+M windows操作系統或者 Cmd+M macOS操作系統, 打開圖形屬性對話框。
          2. 改變文本的狀態,點擊應用。

          注意: 列的標題不會被自動設置, 選擇列,開始輸入文字覆蓋列的標題。

          之后的文章中, 你將會學習更多的自定義屬性和占位符。

          嵌入你的看板

          有很多不同的drawio的集成,使用這些工具集成,你可以使用看板。 drawon.cn中集成了drawio。

          在你選擇工作的地方嵌入你的看板: HTML頁面, VSCode和GitHub項目。 谷歌Workplace. Microsoft Office, Atlassian Confluence, Notion pages , 國內的drawon。這些都可以使用drawio的看板。

          如果你想把看板或者drawio嵌入到其他應用程序中。 你可以閱讀相關的文章。

          在一個簡單的圖表編輯器中使用看板

          使用最小化或者草稿編輯主題, 會默認去掉網格, 這讓看板感覺更像一個便利貼。 如下圖所示

          關于更多可以在drawon中使用。打開drawon.cn使用。


          主站蜘蛛池模板: 国产精品日本一区二区不卡视频| 精品中文字幕一区在线| 免费无码一区二区三区蜜桃| 久夜色精品国产一区二区三区| 波多野结衣中文一区| 后入内射国产一区二区| 国产精品被窝福利一区 | 亚洲综合色自拍一区| 日本无码一区二区三区白峰美| 免费一区二区无码东京热| 日亚毛片免费乱码不卡一区| 毛片一区二区三区| 在线观看亚洲一区二区| 无码国产伦一区二区三区视频| 久久影院亚洲一区| 中文字幕一区二区三区在线播放| 日韩精品人妻av一区二区三区 | 中文字幕无码免费久久9一区9| 国产麻豆剧果冻传媒一区| 免费高清在线影片一区| 亚洲av色香蕉一区二区三区| 97人妻无码一区二区精品免费| 亚洲av午夜福利精品一区人妖| 免费日本一区二区| 日韩在线不卡免费视频一区| 久久精品一区二区三区日韩| 高清国产AV一区二区三区| 免费一区二区三区| 少妇特黄A一区二区三区| 精品三级AV无码一区| 国产精品福利一区二区| 韩国理伦片一区二区三区在线播放| 一本久久精品一区二区| 国产精品香蕉在线一区| 成人欧美一区二区三区在线视频| 另类ts人妖一区二区三区| 一区在线免费观看| 美女啪啪一区二区三区| 一本大道在线无码一区| 日本视频一区二区三区| 国产一区二区三区在线2021|