Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 10-17-2008, 05:44 PM
mangus580 mangus580 is offline
 
Join Date: Aug 2008
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Watermarking Images

Ok, I have been working on a watermarking mod for my site. The way I have the mod setup on my old forum, it puts the username, along with site name in the watermark. This helped my users feel like they still owned their images (trust me even that was a battle!!)

So... I have taken the code I used on the old setup, and been working it together as a plugin.

I have a hook set for 'attachment_complete', and this is the code I am using.

PHP Code:
if(! empty($attachpath)) {
        
$attachpath2 '/home/steelsol/test.steelsoldiers.com/forum_attachments/' $GLOBALS['vbulletin']->userinfo['userid'] . '/';
        
$stamp_file =  $attachpath2 '' $GLOBALS['vbulletin']->userinfo['userid'] . 'w-mark.png';
        if (!
file_exists($stamp_file)){
          
$stamp_fgnd $attachpath2 '' $GLOBALS['vbulletin']->userinfo['userid'] . '_fgnd.png';
          
$stamp_mask $attachpath2 '' $GLOBALS['vbulletin']->userinfo['userid'] . '_mask.png';      
          
$stamp_text $GLOBALS['vbulletin']->userinfo['username'] . ' - www.steelsoldiers.com';
          
$stamp_fgnd_exec "/usr/bin/convert -size 480x50 xc:grey30 -font Helvetica-Bold -pointsize 18 -gravity SouthEast -draw \"fill grey70 text 0,0 '" $stamp_text "'\" " $stamp_fgnd;
          
$stamp_mask_exec "/usr/bin/convert -size 480x50 xc:black -font Helvetica-Bold -pointsize 18 -gravity SouthEast -draw \"fill white text 1,1 '" $stamp_text "' text 0,0 '" $stamp_text "' fill black text -1,-1 '" $stamp_text "' \" +matte " $stamp_mask;
          
$stamp_exec "/usr/bin/composite -compose CopyOpacity " $stamp_mask " " $stamp_fgnd " " $stamp_file;
          
exec($stamp_fgnd_exec);
          
exec($stamp_mask_exec);
          
exec($stamp_exec);
          
unlink($stamp_mask);
          
unlink($stamp_fgnd);
        }
    
$src_file =  '/home/steelsol/test.steelsoldiers.com/forum_attachments/' $GLOBALS['vbulletin']->userinfo['userid'] . '/' $attachmentinfo['attachmentid'] . '.attach';
    
$dest_file '/home/steelsol/test.steelsoldiers.com/forum_attachments/' $GLOBALS['vbulletin']->userinfo['userid'] . '/' $attachmentinfo['attachmentid'] . '.attach';
        
    
$watermark_exec "/usr/bin/composite -gravity southeast -geometry +10+10 " $stamp_file " " $src_file " " $dest_file;
    
exec($watermark_exec);             


Now, this works good, and saves the 'watermark' file for each user.

Here is my problem... it seems that VB relies on the filesize and maybe the hash entry in the DB. When I have this feature turned on, the image gets watermarked fine on the file system. The problem is, when you let VB try to display the image, it never works right. The image is cut short, by approximately the additional bytes of the watermarking.

I tried for a test, manually update the size in the database for one file to the appropriate byte count, but it didnt seem to help. This makes me think that maybe the filehash is involved as well?

Can anyone help me out here?
Reply With Quote
  #2  
Old 10-20-2008, 11:26 AM
mangus580 mangus580 is offline
 
Join Date: Aug 2008
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

We got nothin huh?
Reply With Quote
  #3  
Old 10-21-2008, 12:50 AM
SEOvB's Avatar
SEOvB SEOvB is offline
 
Join Date: May 2007
Location: Indianapolis
Posts: 2,451
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nope, I had the same issue with my water marking modification tht worked on 3.5.x but 3.6 and beyond it does exactly what yours does and cuts the bottom of the image off.
Reply With Quote
  #4  
Old 10-29-2008, 01:07 PM
mangus580 mangus580 is offline
 
Join Date: Aug 2008
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nobody else?
Reply With Quote
  #5  
Old 07-16-2009, 10:18 AM
airliner airliner is offline
 
Join Date: Sep 2007
Posts: 5
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hmm .. that was what I was looking for for like a month ...
I have Photopost integrated in Vbulletin 3.7.
Where shall I put that piece of code. Not so experienced yet. thank you in advance.

best regards
Reply With Quote
  #6  
Old 07-16-2009, 01:35 PM
mangus580 mangus580 is offline
 
Join Date: Aug 2008
Posts: 36
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

airliner, I never made any progress with actually getting it to work.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 02:33 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.10566 seconds
  • Memory Usage 2,226KB
  • Queries Executed 13 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (6)post_thanks_box
  • (6)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (6)post_thanks_postbit_info
  • (6)postbit
  • (6)postbit_onlinestatus
  • (6)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete