2015年3月4日投稿 / 投稿者 : なお / タグ : 投稿プログラム ライブラリ
画像を部分的に保存する仕組みと、保存されたファイルを扱うための関数集(ライブラリ)です。
ライブラリの中から、必要な関数だけ、あるいは全部を、自作のプログラムにコピーしてご利用頂くことを想定しています。
ライブラリを単体で実行すると、ライブラリを使ったデモが走ります。
サンプルプログラムを兼ねていますので、ソースと合わせてご参照頂ければと思います。
プチコン3号用の公開キーです。トップメニューの「作品公開とダウンロード」から公開キーを入力すると、作品をダウンロードすることができます。
収録している関数は下記の4つとなります。
※各関数の詳しい用法は、ライブラリ内のコメント文をご参照ください。
プチコン3号では、GRPページを丸ごと(512x512ピクセル)ファイルとして保存することができますが、部分的に保存する命令は持っていません。
一応、GSAVE命令でGRPページの一部を配列として取得し、それをDATファイルとして保存することはできますが、丸ごとセーブした場合と比べて、ファイルサイズ効率が大幅に低下してしまいます。
このライブラリで扱っている「PTG」形式は、この欠点を解消したフォーマットです。
このライブラリを使うことで、例えば…
などのメリットがあります。
ぜひご活用ください。
この項は技術情報です。
ライブラリをそのままご利用頂く場合、特に読んで頂く必要はありません。
「PTG」(ParTial-GRP)は、GRPページ全域よりも小さい矩形の画像を、ファイルサイズ効率を落とさずに、単体のファイルとして扱うための、フォーマットの提唱です。
高度な圧縮等を行っているわけではありませんが、共通のシンプルなフォーマットとして相互利用を可能にすることで、融通性を高めることを目指しています。
PTGフォーマットの仕様は下記の通りです。
※最後のRの下位16bitに格納すべきピクセルがない場合(=総ピクセル数が奇数の場合)は、0を格納
正確さを期するために小難しい書き方をしていますが、要するに、
だけのものです。
言い換えれば、GLOAD/GSAVEとの親和性が非常に高いので、処理の大半をプチコンの標準命令に任せることができ、短いコードと高速な処理を実現しています。(ものは言いよう^^;)
なんだか大上段に構えたページになってしまいましたが、これは単に、私が開発しているお絵描きツールの部分セーブ機能について、Miiverseでご提案を頂き、フォーマットとしてスピンオフさせたものです。
標準にないフォーマットが必要になった時、各々が考案してしまうと、どうしても非互換になってしまいますが、もし共通のフォーマットがあれば、
といったように、開発者にとって非常に融通性が高くなる→みんながプチコンで開発しやすくなる!と考えています。
ので、ぜひ、どしどしご利用くださいませ。m(__)m
もし、このフォーマットでの部分保存に対応して頂けるグラフィックエディタの作者の方がいらっしゃいましたら、共通の形式であることを利用者が認識しやすいよう、PTG形式であることを何らかの形で明記して頂けると、大変ありがたく思います。
公開しているライブラリは、このフォーマットのひとつの実装例です。
もしPTGフォーマットで保存されたファイルを扱うプログラムを開発しよう!と思われた時は、仕様に則って開発して頂く限り、必ずしもこのライブラリを使う必要はありません。
ぜひ奔放に腕を奮って頂ければと思います。
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)
表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.101 秒 | このページの最終更新 : 2022/09/20 (火) 12:48:47 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30