• ベストアンサー

HTMLでRGBデータを使って画像を表示させることはできますか?

 ブラウザで表示できないファイル形式の画像を表示させるためのCGIプログラムを作成しています。  ファイルから圧縮されたRGBデータを解凍して取り出すことまではできました。これを別のファイル形式にして保存するのではなく、RGBデータをそのまま使用してHTMLで表示できないかと考えています。  ファイルを指定して画像を表示するのではなく0から255もしくは00からffのデータの配列でHTMLに出力する方法があるか教えてください。

noname#110142
noname#110142
  • HTML
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

酔狂なことをちょっとやってみました。 (#1はやらずに回答しました。すみません。) 結果、width="1" height="1" では1つのセルが1文字分占領するので縦長になってしまいます。 環境によるのかもしれませんが、heightが1だったらwidthは3くらい必要なようです。 加えて、フォントサイズの指定もしないと(これまた1文字分占領するので)マス目が大きくなります。 cssで書くと TABLE { font-size: 1pt }  TD { width: 3px; height: 1px } で(Firefox3では)まともに表示出来ました。といっても300%に拡大した状態でしたが。 #たぶんfont-size:1ptが実現されているわけでなく可能な限り小さくなるだけ #font-familyも考慮すべきかも。 もちろんブラウザ依存なので他のブラウザで同じように表示される確証がまったくありません。 この方法では出来なくはないが、表示が歪む可能性が大きいので避けるべき という事だと思います。

noname#110142
質問者

お礼

試しました。 tableタグに border=0 cellpadding=0 cellspacing=0 を設定。 cssでtableに  font-size:1pt;border-spacing:0  tdに  width:1px;heigth:1pxを設定。 <td></td>の間に<font></font>を入れtdのbgcolorと同じ色を設定。 &nbsp;だと縦長になったので全角文字1文字を入れました。 表示されたものは元の画像より、縦が2.25倍、横が2倍くらいの大きさになりましたが、元の画像を拡大したものより幅が少し狭いけど、同じような画像として表示されました。 少し画像の大きさの比率が変わりますが、表示できるようになりました。 ありがとうございます。

その他の回答 (1)

回答No.1

border="0" cellpadding="0" cellspacing="0" なtableで width="1" height="1" な td に bgcolor="#xxxxxx" を指定して &nbsp;を置けば「描ける」はずです。 当然、120ピクセル×80ピクセルの"画像"の場合80個のtrと9600個のtdが必要です。 そんな酔狂なことするならPNGなりGIFなりに書き出した方が賢明です。

参考URL:
http://playerb-web.hp.infoseek.co.jp/al/table.html

関連するQ&A

  • HTMLデータの圧縮について

    ホームページのHTMLデータを zipにて圧縮してメールで送ると 解凍してブラウザーで確認すると リンクファイル名が文字化けしているわけでもないのですが 画像とのリンクが切れてしまいます。 圧縮によってなにかソースが変わってしまうことがあるのでしょうか

  • HTMLの外部jsのようなcgiファイルについて

    はじめまして。かなりレアなケースになると思うのですが、すでにリリースしており、泣き寝入りする事態が起きまして、CGIの出力のところがわからなくて困っております。 1、あるHTMLをブラウザで開くと<head>内のCGIが実行される。 <script language="JavaScript" type="text/javascript" src="○○.cgi"></script> 2、このCGIが実行されるとMySQLのデータを取得し、HTMLでデータを取り扱えるよう、取得した値をJavaScriptの配列の形式に加工され、「Temporary Internet Files」に○○.cgiが保存されます。 var 配列A=new Array(); 配列A[0]="0000001,名前,住所"; 配列A[1]="0000001,名前,住所"; ※○○.cgiを開くと右のような配列の表記が記載されている。 3、このHTML内で、上記の配列をJavaScriptで呼び出せば、Temporary Internet Filesに保存されたcgiファイルのデータ(配列形式の)が表示されるので、まるで外部JSの配列を扱っているかのようにDBのデータを取得することができます。 mysqlのデータを取得した後、CGIでHTMLに吐き出すぐらいはわかるのですが、 画面上に表示させるのではなく、外部JSなら普通どこかサーバにあるJSファイルを見にいくと思うのですが、Temporary Internet Filesに保存され、それが値として操作できるところです。 このCGIの出力の記述がまったくわからないので困っております。 わかりにくい文章で本当に申し訳ございません。どうかよろしくお願いします。

    • 締切済み
    • CGI
  • jpeg画像をより小さく圧縮するために

    現在卒業研究で「画像圧縮によるホームページの高速表示」というテーマを研究しています。これは (1)自PCにサーバソフトをインストール (2)HTMLファイル内に含まれる画像ファイルを圧縮するプログラムをそれに組み込む (3)圧縮処理したHTMLファイルに解凍プログラムを添付、送信 (4)受信側でHTMLファイル内の画像を解凍、ページを表示 というのが大まかな流れです。 そこで、jpegファイルの圧縮に有効なプログラムをハフマン符号化をベースにCで作っているのですが、現在のjpegの規格に使われているハフマン符号化アルゴリズムよりもさらに圧縮率の高いプログラムを作らなければなりません。ちなみに差分値化処理は試しましたがあまり効果はありませんでした。 おおまかなご説明で構いませんので、何か有効な方法があればなにとぞご教授ください。よろしくお願いします。

  • ダウンロードしたHTMLの画像が表示されない

    HTMLファイルを一括ダウンロードしましたが、トップページからのリンクが 切れているのか、画像データがブラウザで表示せずに×印になっています。 表示する画像データのソースと表示しない画像データのソースを比較しても原因が解りません。 ソースは <img src="abc/abc.jpg" width="190" height="245" hspace="10" align="left"> などとなっており、必要なHTMLファイルはディレクトリごと 全てダウンロードソフトでHDD内に保存してあります。 img src="abc/abc.jpg"のパスをHDDの絶対パスに変更しても駄目でした。表示しないのはjpeg,gifどちらもです。 ブラウザの設定なのでしょうか? どうすれば良いでしょうか? 宜しくお願いします。

  • 画像のRGBの値

    画像フィルタが必要になり、そのために画像の性質を知るために、画像のRGBの値を直接求めようと思いました。 具体的には、画像ファイル(BMP)があり、その画像の全画素のRGBの値をテキストファイル(CSV形式)に変換したいのです。そのようなツールありますか? 特殊な用途なので、 while(getpixel(r,g,b)) { printf("%d,%d,%d\n",*r,*g,*b); } のようなプログラムを書かないといけないと思うのですが、「BMPファイルの先頭から順番に画素のRGBの値を持ってくる関数getpixel」が書けません。

  • 入力フォームで入力されたデータをHTMLファイルで出力させたい。

    入力フォームから入力されたデータを、 HTMLファイルで出力しようと考えています。 ブラウザで表示させるのではなく、 ファイルとして出力したいです。 いろいろググりましたが、サンプルが見つかりませんでした。 可能でしょうか。宜しくお願いします。

    • ベストアンサー
    • PHP
  • LZ法で圧縮したデータについて

    LZ法で圧縮したデータについて 現在LZ法(LZ77)で圧縮したデータをバイナリエディタで見ております。 そのデータを解凍しなければならないため、とりあえずLZ法の圧縮/解凍プログラムを組みました。 とあるソフトが出力したデータなのですが、そこのドキュメントにはLZ77で圧縮しているという記述があります。 しかしバイナリエディタで中身を見ると、中間辺りにFF FF FF FFというFFの連なりが多量に見つかりました(20~30Byte) LZ法のアルゴリズムの性質上、同じデータが連なるというのはありえないと思うのですが、認識違いでしょうか? 私はLZ77+huffmanを使っているのでは無いかと思っています。(しかしドキュメントにはLZ77の記述しかありません) 更にLZ法は圧縮情報の持ち方に規定が無い(RFC規定に準じた圧縮アルゴリズムを除く(gzip等))為 そのソフトが吐き出したLZ圧縮が掛かっていると思われるデータについての情報が無く スライド窓の大きさのビット数などが分からないため、解凍に手を焼いています。 これはLZ法で圧縮したデータだよと言われて、只そのデータのみを渡されて それを解凍するというのは可能なのでしょうか?

  • phpで画像表示した際に

    veiw.php?id=1のような形式でphpで画像表示しています。 各ブラウザで画像右クリックで保存すると違いがあり質問です。 画像表示のファイル名はview.phpで出力形式はjpgというのが前提で 保存時の各ファイル名は下記の通りでした。 ie7=view.jpg FF3=view.php Chrome=view.php.jpg opera=view.jpeg FF3以外はそれぞれファイル名が微妙に異なるものの画像として保存 できるのですがFF3のみ拡張子がphpとして保存されてしまいます。 ※保存させる事が表示の目的ではないのですが気になったもので・・・ 保存されたファイルをエディタで開いても 『ファイルに含まれていたNull文字(00H)は、スペースに変換して開きます。』 とアラートが表示されそのまま開くとすっかり文字化け?しているようで ソースが見られるというような事もないので問題ないと思うのですが 全てのブラウザで保存した際に画像として保存させたいのですが どうすれば可能でしょうか? FF3だけ違うのでブラウザの仕様?とも思ったのですがご存知の方が いらっしゃいましたらアドバイスお願い致します。

    • 締切済み
    • PHP
  • VB6でHTMLファイルを作成するとEUCに・・・

    ご存じの方、よろしくお願いいたします。 今、VB6にてHTMLファイルを出力するプログラムを書いています。 このファイルはテーブル表示の部分だけが、毎回異なるため、 その部分だけVB6にて作成するようにしています。 簡単に言うと、HTMLファイルの雛形があるので、まず先頭の部分を雛形ファイルから 読み込み、別のHTMLファイルに保存、続いてVB6のプログラムで編集した部分を HTMLのテーブル形式にして保存、最後に雛形ファイルの終わりの部分を読み込み HTMLファイルに書き込み・・・といった感じでVB6のプログラムを作成しています。 ところが、出力されたファイルはEUCコードになってしまい、 ブラウザで表示すると化け文字になってしまいます。 S-JISで出力するにはどうすれば良いのでしょうか?

  • CGI実行ディレクトリ以下の画像やHTMLファイルをブラウザから表示(

    CGI実行ディレクトリ以下の画像やHTMLファイルをブラウザから表示(参照)できるかCGIを使って判定したいのです、SOCKETを使ってURLで呼び出し返ってくるコードを判定すればいいのはわかるのですがSOCKETでの応答ができないサーバーもあり不確実です、もっと簡単に確実にCGIで判定する方法はありますか?

    • 締切済み
    • CGI

専門家に質問してみよう