में गणित छवि प्राप्त करना मैं मैथमैटिका से जावा तक एक छवि प्राप्त करने के लिए जे/लिंक का उपयोग करने का प्रयास कर रहा हूं। मैं इस तरह मेथेमेटिका में छवि मुद्रित करने में सक्षम हूँ:जावा
Return [ Image[Graphics[Raster[ img[[1]] ], AspectRatio->Automatic, ImageSize->530 ]] ];
Return [ Graphics[Raster[ img[[1]] ], AspectRatio->Automatic, ImageSize->530 ] ];
Return [ Raster[ note1[[1]] ] ];
Return [ note1[[1]] ];
मेरे जावा कोड:
ml.evaluate("tmp = renderImageGeneric[" + sampleId + ", noteText," + sizeX + "," + sizeY + ", margin," + dpi + "," + lineStep + "," + tabStep + "," + ligatureMatch + "," + maxLigHeightDiff + "," + mmSearch + "," + highToLowGap + "," + lowToHighGap + "," + wordBaselineVariance + "," + debugFlag + "]");
ml.discardAnswer();
byte[] res = ml.evaluateToImage("tmp", 0, 0);
ByteArrayInputStream strm = new ByteArrayInputStream(res);
BufferedImage imag = ImageIO.read(strm);
//BufferedImage imag = ImageIO.read(new InputStream(res));
if(imag != null) {
ImageIO.write(imag, "png", new File("/Users/Rebecca/","test.png"));
}else {
System.out.println("image is null");
}
Print[ Graphics[Raster[ img[[1]] ], AspectRatio->Automatic, ImageSize->530 ] ];
मैं विभिन्न तरीकों से मेथेमेटिका समारोह से डेटा लौटने की कोशिश की है
डीबगिंग करते समय, मुझे res में एक बड़ा बाइट सरणी मिलती है। छवि सहेजी जाती है, लेकिन यह खाली है (यानी एक सफेद छवि)।
अगर मैं केवल एक स्ट्रिंग ("नीला") लौटाता हूं, तो स्ट्रिंग नीली वाली एक छवि सहेजी जाती है।
मुझे लगता है कि मुझे रेंडर इमेज जेनेरिक में कुछ अलग करने की ज़रूरत है, लेकिन मैं यह नहीं समझ सकता कि क्या।
धन्यवाद!
यह भी काम नहीं करता था। मुझे यकीन नहीं है कि क्या हो रहा है, लेकिन JLink बस एक फ़ंक्शन की वापसी का सही मूल्यांकन नहीं कर रहा है। – rmw