Cum se obține calea spre imagine în 1c-bitrix, pentruwww - blog pentru dezvoltatori, 1c-bitrix și

Acest lucru nu ne rezolvă problema cu dimensiunea imaginii originale din pagină, iar singurele reguli valide, după părerea mea, pot fi maximă și maximă înălțime.







Luați în considerare cazul în care avem deja imagini mari și dorim să obținem miniaturile lor. Metoda CFile :: ResizeImageGet ne va ajuta. Avantajul său este că atunci când pornim pagina, ea creează imagini în folderul / upload / resize_cache / path - și dacă o astfel de imagine există deja, ea ne va întoarce automat calea către ea. În plus, putem specifica orice dimensiune, calitate și chiar tipul de scalare a imaginilor.

Iată tipurile disponibile pentru noi (informațiile sunt preluate din documentația oficială Bitrix):

  • BX_RESIZE_IMAGE_EXACT - cântărește într-un dreptunghi $ arSize c păstrând proporțiile, trăgând în exces;
  • BX_RESIZE_IMAGE_PROPORTIONAL - scări cu proporții conservatoare, dimensiunea este limitată la $ arSize;
  • BX_RESIZE_IMAGE_PROPORTIONAL_ALT - scale cu păstrarea proporțiilor, dimensiunea este limitată la $ arSize, procesare îmbunătățită a imaginilor verticale.






Să încercăm să reducem imaginile folosind ResizeImageGet:

$ img_resize_path ['src'] - Sper că ați observat că această metodă ne returnează o matrice și că avem nevoie doar de src.

Vom dezasambla în ordine:

$ Ar_fields [ «PREVIEW_PICTURE»] - câmpul pentru codul de fișier (pentru detalii privind schimbarea $ ar_fields [ «DETAIL_PICTURE»]),

array ('lățime' => '100', 'înălțime' => '150') - dimensiunea imaginii rezultate (sau arSize mai sus)

BX_RESIZE_IMAGE_PROPORTIONAL - tipul de zoom, despre care imaginile noastre nu vor vylazit dincolo de limitele specificate.

În documentația oficială a acestei metode există o descriere detaliată, în plus, sunt descrise 4 parametri rămași, care nu suntem obișnuiți (InitSizes, Filtre, Imediat, jpgQuality).

Alte tipuri de muncă:

- Tragerea codării pe 1C-Bitrix;

- Scripturi în PHP și JS (jQuery);

- Parsarea (CSV, XML, XLSX, JSON);

- Integrarea cu servicii API terțe părți;

- versiuni multilingve ale site-urilor;

- și mult mai mult :)







Trimiteți-le prietenilor: