Aurigma Forums
»
Upload Suite
»
Discussions – ActiveX/Java Uploader
»
How To Get The Resized Image Width/Height (Not Original Sizes)
Rank: Newbie
Groups: Member
Joined: 9/28/2011(UTC) Posts: 5
|
In the upload.php demo (the one that writes to the XML file below)... $uploadedFile->getSourceHeight() gets the original height. What syntax do I use to get the modified height of the two thumb variations I am uploading? I see a method called getHeight() am not sure how to call it, since $uploadedFile->getHeight(); is not right. See my note in the code below (XML write section) Code:
<?php
//This variable specifies relative path to the folder, where the gallery with uploaded files is located.
//Do not forget about the slash in the end of the folder name.
$galleryPath = '../UploadedFiles/';
require_once '../Includes/gallery_helper.php';
require_once '../ImageUploaderPHP/UploadHandler.class.php';
/**
* FileUploaded callback function
* @param $uploadedFile UploadedFile
*/
function onFileUploaded($uploadedFile) {
global $galleryPath;
$absGalleryPath = realpath($galleryPath) . DIRECTORY_SEPARATOR;
$absThumbnailsPath = $absGalleryPath . 'Thumbnails' . DIRECTORY_SEPARATOR;
if ($uploadedFile->getPackage()->getPackageIndex() == 0 && $uploadedFile->getIndex() == 0) {
initGallery($absGalleryPath, $absThumbnailsPath);
}
$originalFileName = $uploadedFile->getSourceName();
$files = $uploadedFile->getConvertedFiles();
// Save source file
$sourceFile = $files[0];
/* @var $sourceFile ConvertedFile */
if ($sourceFile) {
$sourceFileName = getSafeFileName($absGalleryPath, $originalFileName);
$sourceFile->moveTo($absGalleryPath . $sourceFileName);
}
//Load XML file which will keep information about files (image dimensions, description, etc).
//XML is used solely for brevity. In real-life application most likely you will use database instead.
$descriptions = new DOMDocument('1.0', 'utf-8');
$descriptions->load($absGalleryPath . 'files.xml');
//Save file info.
$xmlFile = $descriptions->createElement('file');
$xmlFile->setAttribute('name', $originalFileName);
$xmlFile->setAttribute('source', $sourceFileName);
$xmlFile->setAttribute('description', $uploadedFile->getDescription());
$xmlFile->setAttribute('originalHeight', $uploadedFile->getSourceHeight());
$xmlFile->setAttribute('originalWidth', $uploadedFile->getSourceWidth());
// HOW DO I MAKE THIS VALID...
// First Image Converter
$xmlFile->setAttribute('new0Height', $uploadedFile->getHeight()); <----- wrong
$xmlFile->setAttribute('new0Width', $uploadedFile->getWidth()); <----- wrong
// Second Image Converter
$xmlFile->setAttribute('new1Height', $uploadedFile->getHeight()); <----- wrong
$xmlFile->setAttribute('new1Width', $uploadedFile->getWidth()); <----- wrong
// How do i reference the converted height/width for each variation (I upload two) from the $files variable?
$descriptions->documentElement->appendChild($xmlFile);
$descriptions->save($absGalleryPath . 'files.xml');
}
$uh = new UploadHandler();
$uh->setFileUploadedCallback('onFileUploaded');
$uh->processRequest();
|
|
|
|
Rank: Advanced Member
Groups: Administration
Joined: 5/29/2010(UTC) Posts: 1,310
Thanks: 8 times Was thanked: 111 time(s) in 111 post(s)
|
Hello Bill, To receive width and height of thumbnails on the server side, you should get them from fields. Please look at my code snippet: Code:
$width = $uploadedFile->getPackage()->getPackageField('File0Width_' . $uploadedFile->getIndex());
$height = $uploadedFile->getPackage()->getPackageField('File0Height_' . $uploadedFile->getIndex());
$xmlFile->setAttribute('width', $width);
$xmlFile->setAttribute('height', $height);
…
Where File0Width_Index and File0Height_Index are names of necessary fields with width/height of converted files #0. If you send several thumbnails (converters), and need to know their width/height, you should use indexes for them. For example, you have two converters. In this case, you will use this code: Code:
$width0 = $uploadedFile->getPackage()->getPackageField('File0Width_' . $uploadedFile->getIndex());
$height0 = $uploadedFile->getPackage()->getPackageField('File0Height_' . $uploadedFile->getIndex());
$width1 = $uploadedFile->getPackage()->getPackageField('File1Width_' . $uploadedFile->getIndex());
$height1 = $uploadedFile->getPackage()->getPackageField('File1Height_' . $uploadedFile->getIndex());
…
If you need to get width/height of converted image on the client side, you should calculate these values using BeforeUpload and BeforePackageUpload events. If you have any additional questions or problems, please feel free to let me know. Edited by user Wednesday, November 9, 2011 9:40:35 PM(UTC)
| Reason: Not specified |
Best regards, Dmitry Obukhov
Technical Support. Aurigma, Inc.
|
|
|
|
Rank: Newbie
Groups: Member
Joined: 9/28/2011(UTC) Posts: 5
|
Perfect. I was unsure how to get to those fields server-side. I saw them in the array but was unsure of the syntax. Works perfectly and applies to all the other data that is in that array! Thanks!
|
|
|
|
Rank: Advanced Member
Groups: Administration
Joined: 5/29/2010(UTC) Posts: 1,310
Thanks: 8 times Was thanked: 111 time(s) in 111 post(s)
|
Thanks, Bill, for your comment. |
Best regards, Dmitry Obukhov
Technical Support. Aurigma, Inc.
|
|
|
|
Aurigma Forums
»
Upload Suite
»
Discussions – ActiveX/Java Uploader
»
How To Get The Resized Image Width/Height (Not Original Sizes)
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.