Ajouter du texte à une image@lwx228 demandé Comment ajouter du texte à une cellule contenant une image chargée ?Cette idée est assez simple : placez l'image dans une boîte de cadre, utilisez un script graphique pour décorer, prenez une nouvelle photo. Les détails pour obtenir une belle image aller-retour sont un peu plus compliqués. Le cadre doit être dimensionné et mis à l'échelle, l'image doit être positionnée et l'image finale recadrée.
// open the original
original = New Image(
"https://upload.wikimedia.org/wikipedia/commons/thumb/f/fc/Oroblanco_%28sweetie%29_fruits.jpg/320px-Oroblanco_%28sweetie%29_fruits.jpg"
);
{xSize, ySize} = original << size;
// use a frame to do the drawing, make the original fit the frame exactly
gb = Graph Box(
<<BACKGROUNDCOLOR></BACKGROUNDCOLOR>
Les résultats, ci-dessous, montrent l'image remplissant la boîte de cadre avec les décorations, et trois images ci-dessous. L'image de gauche est l'original, le centre est modifié et la droite est la différence. La différence est principalement noire, pas de changement, ce qui est bien. Le texte dans la différence est flou car l'anticrénelage a apporté des modifications subtiles au bord du texte.
Circles and text added on top of fruit picture.Cercles et texte ajoutés au-dessus de l'image des fruits.
Image de Recadrer une image JPG expliquant comment fonctionne la récolte.
Voir plus...
The zero-based pixel indexes are on the hairlines between the pixels.Les index de pixel de base zéro se trouvent sur les lignes fines entre les pixels.
Use a graphics frame box to add text and lines on top of a picture.Utilisez une zone de cadre graphique pour ajouter du texte et des lignes au-dessus d'une image.
Utilisez une zone de cadre pour ajouter du texte et des lignes à une image.
Re : Ajouter du texte à une imageD'ACCORD
Merci Craig!
gb[framebox(1)]<<ADD image=""></ADD>
Re : Ajouter du texte à une imageOui. C'est un peu plus difficile, explications ci-dessous.
// open the original
original = New Image(
"https://upload.wikimedia.org/wikipedia/commons/thumb/f/fc/Oroblanco_%28sweetie%29_fruits.jpg/320px-Oroblanco_%28sweetie%29_fruits.jpg"
);
{xSize, ySize} = original << size;
overlay1 = new image("https://us.v-cdn.net/6038925/uploads/images/35680iA0171FFF13D53E06/NaturalCat.png");// cat
{xOverlay1Size, yOverlay1Size} = overlay1 << size;
dt = open("$sample_data/big class families.jmp","invisible");
overlay2 = dt:picture[1];// katie
overlay2<<SCALE></SCALE>
Pictures added over another picture.Photos ajoutées sur une autre photo.
Le script graphique ne peut pas ajouter l'image. Utilisez plutôt le message <
La fonction GraphBox(...) prend trois types d'arguments : paramètres, messages et scripts. La meilleure pratique consiste à placer les paramètres et les messages en premier, et un seul script à la fin. Les paramètres et les messages sont séparés par des virgules. Le script utilise des points-virgules pour séparer les instructions.
gb = Graph Box(
<<BACKGROUNDCOLOR></BACKGROUNDCOLOR>
Beaucoup, beaucoup de scripts de boîte de graphe ont été écrits avec des virgules accidentelles plutôt que des points-virgules. Chaque virgule provoque le début d'un nouveau script, séparé du script précédent. L'exécution de plusieurs scripts alors qu'un seul suffirait représente un peu de surcharge supplémentaire pour JMP.
Re : Ajouter du texte à une imageBonjour Craig!
Je me demande si JSL peut superposer une petite image à la position spécifiée de l'image ?
J'ai cherché dans le manuel d'aide et je n'ai pas trouvé la réponse.
C'est tout ce à quoi je peux penser.Merci les experts !
img = Open( "$SAMPLE_IMAGES/tile.jpg", jpg );
{x, y} = img << size;
img << crop( Left( 100 ), Right( x - 251 ), top( 0 ), bottom( y - 0 ) );
{x1, y1} = img << size;
img2 = Open( "$SAMPLE_IMAGES/black rhino footprint.jpg", jpg );
img << copy;//??
img2 << paste(100,25);//??
obj = New Window( "paste", New Image( img2 ) );<BR />