我们可以用C输出图片吗?

时间:2008-10-29 08:56:04

标签: html c graphics server-side

我们可以在C中输出.jpg图像或.gif图像吗?

我的意思是我们可以在C程序的帮助下将图片作为输出打印吗?

我们可以用C语言编写一个用于HTML页面的脚本,可以用JavaScript编写吗?

浏览器可以对它进行操作吗?

如果不可能,任何浏览器都有插件吗?

请问任何示例代码或链接?

3 个答案:

答案 0 :(得分:3)

这是很多问题!

您可以分别使用libjpeglibpng从C生成JPEG和PNG文件。 (是的,我是故意回避您的GIF问题。您不需要这样做;现在主流浏览器支持PNG并should be preferred。: - P)

浏览器通常仅支持用于客户端脚本的JavaScript。使用其他任何东西只会破坏您网页的可移植性。是的,就像你说你可以使用插件一样,但是有些人不喜欢安装插件,而其他人则支持那些不允许这样做的公司政策。

答案 1 :(得分:1)

您可以使用Common Gateway Interface(CGI)从C程序生成网页。 C程序在服务器上编译并运行,这与在浏览器上运行的Javascript不同。

您也可以通过CGI生成图像。只需适当设置内容类型,例如。用于JPEG图像的image / jpeg。您可以使用libjpeg生成实际图片。


以下是生成包含JPEG图像的页面的示例C程序:

#include <stdio.h>

main()
{
   char *pageTitle = "Look, a JPEG!";
   char *urlImage  = "/myimage.jpeg";

// Send HTTP header.
   printf("Content-type: text/html\r\n\r\n");

// Send the generated HTML.
   printf("<html><head><title>%s</title></head>\r\n"
          "<body>\r\n"
          "<h1>%s</h1>\r\n"
          "<img src=\"%s\">\r\n"
          "</body></html>\r\n",
          pageTitle, pageTitle, urlImage);
}

答案 2 :(得分:1)

  • 要保存jpeg文件,您需要libjpeg。我确信GIF也有类似的库。
  • C 是一种脚本语言。您不能像在Javascript中一样用C编写脚本。如果你敢,你可以用CGI编写服务器端代码,但这不是一个好主意。编写服务器端组件有几种更好的工具,包括C#/ ASP.NET,Java,Python,Perl,Ruby(带Rails)或PHP。甚至Coldfusion也比网页更适合网页。
  • C不是解释性语言。没有浏览器可以运行你的C代码,我怀疑它会有一个,原因有数百万。此外,没有插件。这是非常不可行的。对于很多东西来说,C是一种很棒的语言,但是网络是很少使用的领域之一(除非你想在C中编写浏览器或http服务器。但即使是这些任务,C ++通常也会更好。 )如果您想在网页中使用客户端脚本,请使用Javascript。有些浏览器也会解释VBScript,但Javascript是首选的浏览器脚本语言。