मैं the method from Jon Hanna करने के लिए सहमत: पार्सिंग करो Base64code तो करने के लिए इसे लोड
एक वैकल्पिक ImageMagick आह्वान करने के लिए लेकिन आप पसंद करते हैं है अनुकरण से पहले जीडी छवि। हालांकि इसे डेटा के रूप में वापस लाने के लिए यह उतना आसान नहीं है जितना मैं करता हूं। GAE में php पर इसे php.ini फ़ाइल में output_buffering = "On"
सेट करके enable output buffering की आवश्यकता होगी।
यहां मैं विस्तार से विस्तार से समझाता हूं। http://php.net/manual/en/function.imagecopyresampled.php
:
http://php.net/manual/en/function.imagecreatefromstring.php
// Create image resource from Base64code
$data64 = 'iVBORw0KGgoAAAANSUhEUgAAABwAAAASCAMAAAB/2U7WAAAABl'
. 'BMVEUAAAD///+l2Z/dAAAASUlEQVR4XqWQUQoAIAxC2/0vXZDr'
. 'EX4IJTRkb7lobNUStXsB0jIXIAMSsQnWlsV+wULF4Avk9fLq2r'
. '8a5HSE35Q3eO2XP1A1wQkZSgETvDtKdQAAAABJRU5ErkJggg==';
$image = imagecreatefromstring(base64_decode($data64));
यह एक छवि संसाधन जो सीधे रीसेंपल कार्य करने के लिए रखा जा सकता है है:
यह दस्तावेज़ संसाधन छवि बनाने के लिए Base64code की पार्सिंग का उपयोग कर संदर्भ के रूप में लिया जाता है
// Resample $image_p = imagecreatetruecolor($new_w, $new_h); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_w, $new_h, $org_w, $org_h);
परिणाम भी एक छवि संसाधन है। इसे डेटा के रूप में प्राप्त करने के लिए हमें बफरिंग की आवश्यकता है। नीचे मैं एक GCS बाल्टी my project पर एक वेबसाइट के रूप में कर सकते हैं तो मैं स्टोर & प्रदर्शन यह सीधे सेट
how to create a base64encoded string from image resource
// Buffering
ob_start();
imagepng($image_p);
$data = ob_get_contents();
ob_end_clean();
देखें दस्तावेज़ का उपयोग करना: https://cloud.google.com/storage/docs/website-configuration#tips
//Store & Display
$context = stream_context_create([
'gs' =>[
'acl'=> 'public-read',
'Content-Type' => 'image/jpeg',
'enable_cache' => true,
'enable_optimistic_cache' => true,
'read_cache_expiry_seconds' => 300,
]
]);
file_put_contents("gs://mybucket/resample/image.jpeg", $data, false, $context);
header("Location: http://mybucket/resample/image.jpeg");
अच्छी तरह से मुझे कोई लिखने है मेरे सर्वर पर अधिकार - मैं इस अंगूठे को अपने node.js ऐप से कैसे जोड़ सकता हूं? कोई उपाय? –
यह "कोई विचार नहीं है कि यह कैसे करें (या अच्छी तरह से, कुछ भी) node.js में" मेरे लिए थोड़ा ऊपर, मुझे डर है। उम्मीद है कि किसी और के पास एक अच्छा विचार हो सकता है। –
2 दिनों के लिए इसके लिए उत्तर खोज रहे हैं ... सामान्यतः यह नोड के साथ ठीक काम करेगा - लेकिन मेरे नोड-ऐप में मेरे पास कोई राइट-राइट्स नहीं है ... यह भी –