标签: png

将CGImageRef保存到png文件?

在我的Cocoa应用程序中,我从磁盘加载一个.jpg文件,操纵它.现在需要将其作为.png文件写入磁盘.你怎么能这样做?

谢谢你的帮助!

cocoa png core-graphics cgimage

29
推荐指数
4
解决办法
3万
查看次数

如何将多个PNG组合成一个大的PNG文件?

我有约.6000个PNG文件(256*256像素),并希望将它们组合成一个大PNG,以编程方式保存所有这些文件.

最好/最快的方法是什么?

(目的是在纸上打印,因此使用某些网络技术不是一种选择,只有一个单一图片文件将消除许多使用错误.)

我尝试了fahd的建议,NullPointerException但当我尝试创建一个BufferedImage宽24576像素,高15360像素的时候,我得到了一个.有任何想法吗?

java png scala image image-processing

29
推荐指数
3
解决办法
5万
查看次数

拖放多个文件的批处理文件?

我写了一个批处理文件,当我将它拖放到批处理文件时,使用PngCrush来优化.png图像.

在接下来的部分中,我写了一篇关于我认为对批处理文件的良好升级的文章.

我的问题是:是否可以像在帖子中那样创建批处理文件,但能够一次优化多个图像?拖放多个.png文件?(并且输出类似于new.png,new(1).png,new(2).png等...

optimization png image batch-file

28
推荐指数
3
解决办法
3万
查看次数

适用于iOS的图像资源

我可能在这里遗漏了一些明显的东西,但我一直无法解决以下问题:

我有一个包含普通和视网膜屏幕图像资源的项目,例如someimage.pngsomeimage@2x.png,它们存储在一个单独的包中.当我构建项目时,Xcode自动将它们打包成一个多页tiff(imageName.tiff),我在finder中检查了它 - 它实际上是两个图像的多重tiff.但是,出现了一个问题:我很难加载适当的资源.

我所做的是:

    NSString * imageName = ... ;

    NSLog(@"imageName: %@", imageName);

    UIImage * someImage = [UIImage imageNamed: imageName];
Run Code Online (Sandbox Code Playgroud)

另外我给了辅助方法,它返回带有资源的bundle:

   +(NSBundle *) resourcesBundle
   {
         NSBundle *bundle = [NSBundle bundleWithURL:[[NSBundle mainBundle] URLForResource:@"MyResourcesBundle" withExtension:@"bundle"]];
         return bundle;
   }
Run Code Online (Sandbox Code Playgroud)

我试过以下imageName:

imageName = [[AuxClass resourcesBundle] pathForResource:@"someimage" ofType:@"png"];
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我都nullimageName.

imageName = [[AuxClass resourcesBundle] pathForResource:@"someimage" ofType:@"tiff"];
Run Code Online (Sandbox Code Playgroud)

在这种情况下,会返回精确图像路径,但是只有在我使用imageWithContentsOfFile而不是它时它才有效imageNamed,并且它没有采用适当的资源:尽管有屏幕类型,它仍会为视网膜加载资源.

如果我省略filetype(就像我在添加@2x资源之前所做的那样,并且它工作正常,并且我尝试了第一件事并且确定它会起作用)

imageName = [NSString stringWithFormat: @"%@/%@",
                                  @"MyResourcesBundle.bundle"",
                                  @"someimage" ];
Run Code Online (Sandbox Code Playgroud)

什么都没有加载. …

xcode png tiff objective-c ios

28
推荐指数
3
解决办法
2万
查看次数

如何使用C#生成PNG文件?

我正在尝试使用C#生成PNG文件.我谷歌的一切似乎都与WPF有关.我的问题是,我需要在.NET 2.0中创建一个填充绿色的PNG 50x50正方形.

我的问题是,我该怎么做?我在查看System.Drawing命名空间.但毕竟,我觉得我离开了.有人可以给我一些指示吗?

c# png

27
推荐指数
2
解决办法
4万
查看次数

将PNG绘制到画布元素 - 不显示透明度

我正在尝试使用drawImage在canvas元素上绘制一个半透明的PNG.但是,它将图像绘制为完全不透明.当我查看正在加载的资源并在浏览器中加载实际的PNG时,它会显示透明度,但是当我在画布上绘制时,它不会.有任何想法吗?

这是代码:

drawing = new Image() 
drawing.src = "draw.png" 
context.drawImage(drawing,0,0);
Run Code Online (Sandbox Code Playgroud)

html5 png transparency canvas drawimage

27
推荐指数
3
解决办法
5万
查看次数

将多页PDF转换为PNG并返回(Linux)

我有很多PDF文档要转换为PNG,在Gimp中编辑,然后保存回多页Acrobat文件.我正在填写表单并添加扫描签名,试图避免打印,签名,然后重新扫描,并能够输入我需要输入的信息.

我一直在尝试使用Imagemagick转换为png文件,这似乎工作正常.我使用命令 convert -quality 100 -density 300x300 multipage.pdf single%d.png
(我不确定质量参数是否适合png).

但是我在保存回PDF方面遇到了问题.有些文件的页面大小错误,我已经尝试了我能找到的每个命令和程序,但总有一些奇怪的大小.分辨率似乎有所不同,因此它在某个缩放级别看起来很好,但是几页指定为大约2"宽,或者它们是8.5x11但其他页面大约是35"宽.我已经尝试确保Gimp的画布大小和分辨率正确,并将分辨率保存在文件中,但这似乎并不重要.

我用来保存文件的命令是convert -page letter -adjoin single*.png multipage.pdf 我尝试了其他参数,但似乎没有.

如果有人有任何想法或替代方案,我会很感激.

pdf png imagemagick

27
推荐指数
2
解决办法
3万
查看次数

适用于.NET的最快PNG解码器

在将结果发送到Web客户端之前,我们的Web服务器需要将大量图像组合在一起.此过程对性能至关重要,因为服务器每小时可以接收数千个请求.

现在我们的解决方案从HD加载PNG文件(每个大约1MB)并将它们发送到视频卡,以便在GPU上完成合成.我们首先尝试使用XNA API公开的PNG解码器加载我们的图像.我们看到表现不太好.

要了解问题是从HD加载还是解码PNG,我们通过将文件加载到内存流中,然后将该内存流发送到.NET PNG解码器来修改它.使用XNA或使用System.Windows.Media.Imaging.PngBitmapDecoder类的性能差异并不重要.我们大致获得相同的性能水平.

我们的基准测试显示以下性能结果:

  • 从磁盘加载图像:37.76ms 1%
  • 解码PNG:2816.97ms 77%
  • 在视频硬件上加载图像:196.67ms 5%
  • 成分:87.80ms 2%
  • 从视频硬件获取作品结果:166.21ms 5%
  • 编码为PNG:318.13ms 9%
  • 存储到磁盘:3.96ms 0%
  • 清理:53.00ms 1%

总计:3680.50ms 100%

从这些结果中我们看到最慢的部分是在解码PNG时.

所以我们想知道是否会有我们可以使用的PNG解码器,这将允许我们减少PNG解码时间.我们还考虑将图像保持在硬盘上不压缩,但是每个图像的大小为10MB而不是1MB,并且由于硬盘上存储了数万个这样的图像,因此无法存储它们.压缩.

编辑:更有用的信息:

  • 基准测试模拟加载20个PNG图像并将它们合成在一起.这大致对应于我们将在生产环境中获得的请求类型.
  • 组合物中使用的每个图像的尺寸为1600×1600.
  • 该解决方案将涉及多达10个负载平衡服务器,就像我们在这里讨论的那样.因此额外的软件开发工作可能值得节省硬件成本.
  • 我们正在考虑缓存解码的源图像,但每种组合很可能使用完全不同的源图像完成,因此缓存未命中率高,性能提升低.
  • 基准测试是用一个糟糕的视频卡完成的,所以我们可以期待使用体面的视频卡将PNG解码更加成为性能瓶颈.

c# performance png decode decoding

27
推荐指数
2
解决办法
5584
查看次数

如何使用html5 canvas/javascript/jquery将svg转换为png并保存在服务器上

好吧,我需要一些关于将.svg文件/图像转换为.png文件/图像的帮助......

我的页面上显示了.svg图像.它保存在我的服务器上(作为.png文件).我需要根据需要将其转换为.png文件(单击按钮)并将.png文件保存在服务器上(我将使用.ajax请求执行此操作).

但问题是转换.

我读了很多关于html5 Canvas的东西,这可能有助于做我现在需要做的事情,但是我找不到任何明确的解决方案来解决我的问题,而且,tbh,我不明白我发现的一切......所以我需要一些明确的建议/帮助我必须这样做.

这是"html idea"模板:

<html>
    <body>
        <svg id="mySvg" width="300px" height="300px">
            <!-- my svg data -->
        </svg>
        <label id="button">Click to convert</label>
        <canvas id="myCanvas"></canvas>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

和一些js:

<script>
    $("body").on("click","#button",function(){
        var svgText = $("#myViewer").outerHTML;
        var myCanvas = document.getElementById("canvas");
        var ctxt = myCanvas.getContext("2d");
    });
</script>
Run Code Online (Sandbox Code Playgroud)

然后,我需要将svg绘制到Canvas中,获取base64数据,并将其保存在我的服务器上的.png文件中......但是......怎么样?我读到了很多不同的解决方案,我实际上......迷失了...我正在研究jsfiddle,但我实际上......无处可寻...... http://jsfiddle.net/xfh7nctk/6 / ...感谢您的阅读/帮助

html javascript svg png canvas

27
推荐指数
2
解决办法
5万
查看次数

如何使用javascript显示PNG图像的动画图像?[比如gmail]

首先,看看这个图像
眨眼
Gmail使用此图片显示动画表情符号.
我们如何使用png图像显示这样的动画?

javascript animation png image

26
推荐指数
1
解决办法
4万
查看次数