{開発}{開発記録}{一段落}{一通り}{}{デライト}{WebP}{pdftoppm}{譜類添付機能調整}{譜類添付機能}(116)

{希哲17年4月5日の開発 K#F85E/E74C-3148}

譜類添付機能調整など。

細かい挙動調整終えてから PDF 埋め込み対応完了譜類添付機能全体として完成形言える状態になり,ようやくエクスポート機能実装移れる

3月24日の開発時点では,添付ボタン埋め込み記法ラスター画像JPEG, PNG, GIF, WebP扱える程度機能実装一段落としたが,SVG動画音声までの埋め込み含めて対応その他主要文書譜類対応添付代置子導入貼り付けドロップ対応更に PDF 埋め込み対応と,現時点やりたいこと一通りやってしまった一段落とは言ったものの中途半端感残りいまいちすっきりせずデライト公式での機能紹介出来ていなかった


PDF 埋め込み対応関してはPDF.jspdftoppm優秀だったおかげで意外とあっさり実装出来た特に PDF.jsviewer.html場筋PDF 譜類場筋組み合わせ<iframe>src 属性渡せばいいだけで,スクリプト側対応簡単だった

最初のページpdftoppmJPEG に,cwebpWebP変換,その画像クリック縦サイズ合わせた <iframe>置換し viewer.html読み込む読み込み中進捗表示viewer.html行ってくれるので,これだけ違和感なく軽快な PDF 埋め込み実現出来た一応,「(.pdf 添付ファイル)」の小書き輪結添えるようにしておいたPDF 埋め込みの様子


一つ添付譜類握接権限課題残した現状場筋分かっていれば誰でも握接出来るが,デライト性質上大きな問題ではないエクスポート機能譜類握接制御実装するのでそれを応用することにした。

{進捗記録}{末尾}{日本語}{進捗}{WebP}{拡張子}{希哲17年4月5日の開発}{希哲17年4月5日の進捗}{譜類添付機能調整}{譜類添付機能}(115)

{希哲17年4月5日8歩 K#F85E/E74C-5EA8}

進捗時限記録中略

譜類添付機能調整

調整手定め終えここでいったん出振るい昨日うっかり中途半端な状態全体出振るいしてしまったため,譜類添付機能周り不具合があったかもしれない)

添付代置子追加し貼り付けドロップによる添付使えるようになった用合い面でもほぼ完成形か。

添付代置子

3月27日の開発考案した送信中挿入しておく添付代置子は,最終的に <!-- +[拡張子] [文言]...[追加ピリオド] -->形式となった。日本語WebP であれば,<!-- +webp 送信中... --> となる3月27日の開発記録で「読み込み中」と書いていたのは単なる間違い

まず描写内探索し埋め込み済みでなければ添付代置子挿入する。この時,添付代置子固有文字列となるように,必要であればピリオド追加していく送信完了時成功なら埋め込み記法置換失敗なら消去する貼り付けのために,描写欄捕活中カーソルの位置代置子挿入するようになっているが,捕活していない場合末尾追記する。また,送信中代置子書き換えられた場合無視して埋め込み記法末尾追記する

これで送信中状態直感的に分かりやすくなった

その他

読み込み中...
{開発}{開発記録}{十分}{}{知番}{WebP}{拡張子}{描写下見機能}{譜類添付機能}{cwebp}(187)

{希哲17年3月24日の開発 K#F85E/E74C-A57A}

譜類添付機能実装一段落させた出振るい手定め済み

いくつか課題残ったものの,これで譜類添付機能基礎出来た輪郭選り手領当てほぼ完成形言っていいだろう。本当努通して関連仕様検討や,中途半端だった libxtd譜類操作関連交度整備なども大きく進んだ

用合いとしては,録入り中描写選り手左下譜類添付ボタン置き譜類選択同時に上信開始完了したら埋め込み記法+[拡張子]追記下見開く開いている場合更新するというになった。すでに同拡張子添付譜類存在する場合上書きする予定通り描写内参照消し描き出し描き直しまたは輪郭削除削除されるようにした。

当初譜類選択後専用下見機能付き小窓開き確認してから送信,という用合い考えていたが,素早く描き出したい場合煩雑になり,交度複雑化見合わない可能性があるため見送った「送信中...」,「+[拡張子] を追記しました。」,「.[拡張子] で保存しました。」上書き場合3種類メッセージ@msg表示し下見関しては既存の下見機能利用すれ十分なことに気付いた描き出し前には上信せずスクリプト保持することも検討したが,これもページ遷移などへの対応考える無駄な複雑化招く可能性があるため見送った

対応形式とりあえず JPEGPNGGIFWebP のみ。WebP 以外場合長辺1920px以下WebP変換するWebP上信関してはImageMagick未対応パッケージまだ多いことなどから,1MiBサイズ上限のみで対応することにした。その他譜類サイズ上限原則として5MiBサイズ上限以外基本的に kn upl仕様合わせたが,cwebpICC プロファイル捨ててしまう問題気付いて kn upl ともども -metadata icc加えた

埋め込み記法では,拡張子のみ,知番拡張子組み合わせ加えて輪符拡張子組み合わせにも対応した

下見機能利用するために添付譜類舞覧隠し戦略見直した結局譜類更新時印から隠し破り付与出来るようにし,隠し破り有無Cache-Controlpublicno-cache切り替えられるようにした5歩これまでは一律 no-cache だった)Dex実譜類依存するのは水平拡大考えるとどうかと思ったが,そのうち KNEST 隠し化すればいいと判断した

最後の最後で,領下手定め環境問題なかった新規描出フォーム添付譜類本番環境では 404 Not Found になるという問題はまったが,これは systemdPrivateTmp による問題であることが分かり一時的に無効化してから問題無いように修正し元に戻した新規描出フォームでは無駄に永続譜類残さないように /tmp/利用していたことが原因だった。最終的に,これが大して意味を持たない設計になったので再描出フォーム同じ自我台録利用することにした。

{WebP}

{}