vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   Image variable BBCode (https://vborg.vbsupport.ru/showthread.php?t=201521)

MTGDarkness 01-12-2009 04:07 PM

Image variable BBCode
 
After the .com failed me, I figured I should try here...

The history of my search:
http://www.vbulletin.com/forum/showthread.php?t=294887. The most important stuff:
Quote:

Originally Posted by me
hmm... I dunno if you get my meaning. Say I have images a,b,c,d,e,f,etc. all the way to z. I need a BBCode that can pick up anything from a,a,z to t,r,a,y,h; if you know what I mean. Like [mc]tearyrwert[/mc] would bring out all of the images mentioned in the string, repeats and places kept where they are. Just like [mc]yioteykn[/mc] would.

Quote:

Originally Posted by zachary
Thats going to require custom coding and some sort of Image Processing Librairy.

http://www.theadminzone.com/forums/s...ad.php?t=58021. The most important stuff:
Quote:

Off hand I wouldn't know all the details but basically the BB code would be used to call a javascript function with those characters as arguments... such as [imgsrc]hyuop[/imgsrc] would translate to html to call the javascript function insertimages("hyuop")

The function insertimages() would then take the string input, look at it character by character, the list of images for each character is pre-defined in the javascript of course... and it would just add the <img> tags for each character.

It certainly seems possible from what I know of Javascript and VB... the exact details off hand I don't know but it can be done. The javascript code would go in the header so it's on all pages...

The problem is only, now I really don't know how to proceed. I have very little Javascript knowledge. I mean, I could probably get it to almost useful, but even then, it would be better just to use the images as smileys like now, because I have no idea how to get it to detect repeats or anything like that. So basically, I'm screwed. If anyone can tell me what kind of coding I need here... I'd also be prepared to pay for someone doing this modification, although my sums are somewhat limited...

Thanks in advance,
-Cadet, MTGDarkness admin

Bellardia 01-12-2009 05:04 PM

How long do these images get? If they always stay on the same line you could easily use a php image library to generate the string. Use bb code to change
[ul]{something}[/ul]
to
<img src="generateimage.php?string=something" alt="something" />

And have a php script that takes the query string and separates the characters, sends back image headers and displays the images for each. Probably best to use GD library for php.

This way you could use built in vb features and an external script instead of having to worry about fetching the information with javascript after the page loads.

MTGDarkness 01-12-2009 05:08 PM

The problem with that is that I need it to detect multiple images in the same code string. Unless I misunderstand you?

Bellardia 01-12-2009 05:16 PM

You could detect each character as an image like you said.
Such as letter
a = 'firstimg.png'
b = 'secondimg.png'

so [ul]aba[/ul] would return the 3 images in a row.

I was hinting more towards how to format the images? Are they all the same/size dimension, and will they all fit on a single display line or will some have to appear ontop of eachother when formatted because they're too large.

Such as
one line would have images ababaaab and they would flow over to the next line with images bbaba etc.

Hope that makes sense?

Either way it's still possible, you'll just have to include some math as well to calculate line widths and when to skip to the next if its too large.

MTGDarkness 01-12-2009 05:27 PM

Wow! Now I just need to figure out the library script to use... Can you give me any pointers there? I really have no idea whatsoever.

Bellardia 01-12-2009 07:22 PM

Basic functionality
PHP Code:

<?php
$myImage 
imagecreatefromjpeg('jpgFile.jpg');
header("Content-type: image/jpeg");
imagejpeg($myImage);
imagedestroy($myImage);
?>

Combine it with other php gd functions. Probably the ones you'll need [ Refrence ]
imagecreate()
imagecopymerge()
imagecreatefrompng() or imagecreatefromgif() or whichever format you're using

Basic idea:
Get each character from the query string, add up each images width to find total image size. If image a = 30pixels, b=200pixels, then ?string=aba would be 260pixels.
Use imagecreate to make a 260pixel image. Take image a copymerge it onto the background image from imagecreate, copymerge image b 30 pixels to the right of that, then copymerge image a again 230 pixels from origin of the background image.

Hope I didn't get too complex..

Dismounted 01-13-2009 04:34 AM

Also make sure GD is enabled on your server first (see PHP info).


All times are GMT. The time now is 06:50 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01670 seconds
  • Memory Usage 1,731KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_php_printable
  • (3)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (7)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete