Tag: image

在function上穿越图像的惯用方法

我正在使用Java 8并尝试编写纯函数代码。 在我的最新项目中,我需要逐步浏览图像中的每个像素,并对每个像素执行一些计算。 我提出的代码是这样的: IntStream .range(0, newImage.getWidth()) .forEach(i -> IntStream .range(0, newImage.getHeight()) .forEach(n -> { inspectPixel(i, n, newImage); }) ); 但是,命令式版本是这样的: for (int i = 0; i < newImage.getWidth(); i++){ for (int n = 0; n < newImage.getHeight(); n++){ inspectPixel(i, n, newImage); } } 也许这只是因为我太习惯于命令式编程,但后者似乎比前者更具可读性。 正在发生的事情之一是: 我的代码是错误的,我是以错误的方式进行的吗? 如果是这样,代码应该是什么样的? 您如何在function上遍历任何二维数据结构,而不仅仅是图像? 这实际上是Java 8function方案中程序的最佳版本,这种情况对于函数式编程来说简直很糟糕。

BLE图像传输

这是将图像转换为字节数组并发送到ble设备的代码我无法发送完整的数据,并且它几乎停在1kb 有什么方法可以将大数据发送到ble。 是否适合在数据传输中使用延迟,如果可以,则可以共享代码 如果有人有任何代码发送数据高达1mb请分享 公共类RxTxActivity扩展Activity { byte[] imageInByte,SendByte; private static int IMG_RESULT = 1; String ImageDecode; ImageView imageViewLoad; Button LoadImage; Intent intent; String[] FILE; String[] SAImage,SAsent; private final static String TAG = DeviceControlActivity.class.getSimpleName(); public static final String EXTRAS_DEVICE_NAME = “DEVICE_NAME”; public static final String EXTRAS_DEVICE_ADDRESS = “DEVICE_ADDRESS”; private TextView mCharaDescriptor; private TextView mConnectionState; private TextView […]

如何将多个png图像转换为单个tiff文件

我有一个png格式的几个图像的字节数组。 我必须将其转换为tiff文件,然后转换为相应的字节数组。 这个tiff文件将保存多个图像。 我已经接受了很多,但我没有成功。 问题是。 我只能在java中这样做!! :)任何人都可以就我的问题提供一些见解吗? 我不会受益于ImageMagick等,因为我有一个服务器组件来处理这个转换,然后将它作为tiff保存在后端。 客户端给我一个字节数组,它将转换为png图像。

在jar文件中加载图像

我正在尝试从可执行的JAR文件加载图像。 我已经按照这里的信息,然后是这里的信息。 这是检索图像的function: public static ImageIcon loadImage(String fileName, Object o) { BufferedImage buff = null; try { buff = ImageIO.read(o.getClass().getResource(fileName)); // Also tried getResourceAsStream } catch (IOException e) { e.printStackTrace(); return null; } if (buff == null) { System.out.println(“Image Null”); return null; } return new ImageIcon(buff); } 这就是它被称为的方式: logo = FileConverter.loadImage(“/pictures/Logo1.png”, this); JFrame.setIconImage(logo.getImage()); 这是一个简单的对象。 我也没有得到NullPointerException,除非它被UI掩盖。 […]

将图片插入JTextPane

在我的记事本应用程序中,我试图通过单击名为Picture的JMenuItem将图像添加到JTextPane ,就好像它是JLabel 。 private class Picture implements ActionListener { public void actionPerformed(ActionEvent event) { fc = new JFileChooser(); FileNameExtensionFilter picture = new FileNameExtensionFilter(“JPEG files (*.jpg)”, “jpg”); fc.setFileFilter(picture); fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); if (fc.showDialog(Notepad.this, “Insert”)!=JFileChooser.APPROVE_OPTION) return; filename = fc.getSelectedFile().getAbsolutePath(); // If no text is entered for the file name, refresh the dialog box if (filename==null) return; // NullPointerException textArea.insertIcon(createImageIcon(filename)); […]

Struts 2 – 拦截使用CKEditor上传的图像文件

我在网站的不同页面上有一个CKEditor ,因此我将上传设置为true以及所有配置工作以使其正常工作,并且图像上传工作正常”Send it to the Server”选项卡。 但是从这里我想截取或与uploadfunction交互,以便能够将图像上传到文件夹,而是上传到图像上传, “category” , “cropping”和其他一些操作的数据库。他们。 那么如何拦截这些上传? 我很好奇,我发现上传的默认操作是 /%project_name%/ckeditor/upload.html?CKEditor=textarea_1457018535&CKEditorFuncNum=2&langCode=en 此上传的操作是CkeditorUpload.java ,但我没有意识到如何进一步使用它们。

SWT图像到/从字符串

我试图将SWT图像转换为字符串,反之亦然: 字符串: Display display = new Display(); final Image image = new Image(display, “c:\test.png”); // Looks good showImage(image ,600,400); ImageData imageData = testImage.getImageData(); byte[] data = imageData.data; String imageString = new String(Base64.encode(data)); 回到图片: byte[] decode = Base64.decode(imageString.getBytes()); decode.toString(); Image c_img = new Image(Display.getCurrent(), stringToInputStream(decode.toString())); // Throws exception. showImage(c_image ,600,400); 哪里: private static void showImage(final Image […]

某些图像文件类型是否始终与某些BufferedImage常量类型相对应?

Java中的BufferedImage类包含一个getType()方法,该方法返回一个与BufferedImage常量类型变量相关的整数,该变量描述了有关如何编码图像的一些信息(您可以查看BufferedImage源以确定哪个数字对应于常量类型变量) 。 例如,如果它返回与BufferedImage.TYPE_3BYTE_BGR对应的整数,则表示BufferedImage是8位RGB图像,没有alpha,蓝色,绿色和黄色各自由3位表示。 其中一些图像类型似乎与特定格式的某些属性相关。 例如, TYPE_BYTE_INDEXED表示它是从“256色6/6/6颜色立方体调色板”创建的。 这听起来很像GIF图像,它是由256种颜色创建的。 好奇,我在硬盘上扫描了几百张照片,并使用ImageIO.read(File file)将它们转换为BufferedImage,然后在它们上面调用BufferedImage.getType() 。 我确定只有少数BufferedImage类型是从某些图像类型生成的。 结果如下: JPG: TYPE_3BYTE_BGR,TYPE_BYTE_GRAY PNG: TYPE_3BYTE_BGR,TYPE_BYTE_GRAY,TYPE_4BYTE_BGRA GIF: TYPE_BYTE_INDEXED 虽然看起来JPG和PNG共享一些类似的BufferedImage常量类型,但我的测试中只有一个PNG导致TYPE_4BYTE_BGRA并且每个GIF导致TYPE_BYTE_INDEXED 。 我对图像格式并不太熟悉,而且我的样本量并不是那么大。 所以我想我会问:假设图像格式正确,某些图像类型是否总是导致具有某些常量类型的BufferedImages? 要提供具体示例,正确格式化的GIF图像是否始终对应于TYPE_BYTE_INDEXED ? 或者所有格式正确的图像是否可以与所有BufferedImage常量类型相对应?

Java 2D Imageresize忽略双三次/双线性插值渲染提示(OS X + linux)

我正在尝试使用Image Voodoo插件在JRuby / Rails应用程序中为上传的图像创建缩略图 – 问题是resize的缩略图看起来像……屁股。 生成缩略图的代码似乎绝对正确地将插值渲染提示设置为“bicubic”,但是它并没有在我们的开发环境(OS X)或生产Web服务器(Linux)上表现出来。 。 我已经提取出代码来生成缩略图,将其重写为直接的Java应用程序(即从main()方法开始),插值呈现提示明确设置为“bicubic”,并且已经复制了(缺少)双三次和双线性resize。 正如在OS X和Linux上所预期的那样,拇指按钮是丑陋且像素化的,但在Windows上,它使用双三次插值很好地调整了图像的大小。 是否有任何JVM环境设置和/或其他库我缺少使其工作? 对于这个,我正在做很多撞墙的事。

从ServletOutputStream输出GIF

我正在编写一个动态生成GIF文件的端点。 我会从头开始。 我有一个名为Function的类,它的工作方式类似于抽象类,我有几个类,在本例中是AddFunction ,代表了一小部分function。 在这种情况下, AddFunction将一些数字加在一起。 当命中终点时, AddFunction的ID被传递给它(它可以是任何,在这个例子中它是add函数)。 控制器中的代码如下: /** * Returns the image for a function */ @RequestMapping(value = “/function/{functionId}/image.gif”, produces = “image/gif”) public void getImage(@PathVariable(value = “functionId”) String functionId, HttpServletResponse response) throws IOException { Function function = functionService.getFunction(Integer.valueOf(functionId)); Logger logger = Logger.getLogger(FunctionController.class); ServletOutputStream servOut = response.getOutputStream(); // Uses default values if you pass […]