JavaScript Bild Cropper. Dies ist der Zweig für v1.x, für v2.x, die
v2
-Filiale.
dist/
├── cropper.css
├── cropper.min.css (compressed)
├── cropper.js (UMD)
├── cropper.min.js (UMD, compressed)
├── cropper.common.js (CommonJS, default)
└── cropper.esm.js (ES Module)
npm install cropperjs
Im Browser:
< link href =" /path/to/cropper.css " rel =" stylesheet " >
< script src =" /path/to/cropper.js " > </ script >
CDNJS bietet CDN -Unterstützung für CSS und JavaScript von Cropper.js. Hier finden Sie die Links.
new Cropper ( element [ , options ] )
Element
HTMLImageElement
oder HTMLCanvasElement
Optionen (optional)
Object
<!-- Wrap the image or canvas element with a block element (container) -->
< div >
< img id =" image " src =" picture.jpg " >
</ div >
/* Make sure the size of the image fits perfectly into the container */
img {
display : block;
/* This rule is very important, please don't ignore this */
max-width : 100 % ;
}
// import 'cropperjs/dist/cropper.css';
import Cropper from 'cropperjs' ;
const image = document . getElementById ( 'image' ) ;
const cropper = new Cropper ( image , {
aspectRatio : 16 / 9 ,
crop ( event ) {
console . log ( event . detail . x ) ;
console . log ( event . detail . y ) ;
console . log ( event . detail . width ) ;
console . log ( event . detail . height ) ;
console . log ( event . detail . rotate ) ;
console . log ( event . detail . scaleX ) ;
console . log ( event . detail . scaleY ) ;
} ,
} ) ;
Wie kann man nach dem Zoomen oder Zoomen eines neuen Bereichs einberufen?
Doppelklicken Sie einfach auf Ihre Maus, um den Erntemodus einzugeben.
Wie bewege ich das Bild, nachdem ich einen Bereich geschnitten habe?
Doppelklicken Sie einfach auf Ihre Maus, um den Umzugsmodus einzugeben.
Wie repariere ich das Seitenverhältnis im freien Verhältnismodus?
Halten Sie einfach die
Shift
, wenn Sie die Größe des Erntekastens ändern.
Wie kann man einen quadratischen Bereich im kostenlosen Verhältnis -Modus beschneiden?
Halten Sie einfach die
Shift
, wenn Sie auf dem Bild tauchen.
Die Größe des Cropper erbt von der Größe des übergeordneten Elements (Wrapper) des Bildes. Wickeln Sie also das Bild mit einem sichtbaren Blockelement ein.
Wenn Sie Cropper in einem Modal verwenden, sollten Sie den Cropper nach dem vollständig angezeigten Modal initialisieren. Andernfalls erhalten Sie nicht den richtigen Cropper.
Die ausgegebenen Kumpeldaten basieren auf der ursprünglichen Bildgröße, sodass Sie das Bild direkt erregen können.
Wenn Sie versuchen, Cropper auf einem Cross-Origin-Bild zu starten, stellen Sie bitte sicher, dass Ihr Browser die Attribute für die HTML5-CORS-Einstellungen unterstützt und Ihr Imageserver die Option Access-Control-Allow-Origin
Option unterstützt (siehe HTTP Access Control (CORS)).
Bekannte iOS -Ressourcengrenzen: Wenn iOS -Geräte den Speicher begrenzen, kann der Browser zum Absturz bringen, wenn Sie ein großes Bild (iPhone -Kameraauflösung) abschneiden. Um dies zu vermeiden, können Sie das Bild zuerst (vorzugsweise unter 1024 Pixel) ändern, bevor Sie einen Cropper starten.
Bekannte Bildgröße Erhöhung: Beim Exportieren des verkauften Bildes auf der Browserseite mit der Methode HTMLCanvasElement.toDataURL
kann die Größe des exportierten Bildes größer sein als das Originalbild. Dies liegt daran, dass der Typ des exportierten Bildes nicht mit dem Originalbild übereinstimmt. Geben Sie also einfach den Typ des Originalbilds als erster Parameter an toDataURL
über, um dies zu beheben. Wenn der ursprüngliche Typ beispielsweise JPEG ist, verwenden Sie cropper.getCroppedCanvas().toDataURL('image/jpeg')
um das Bild zu exportieren.
⬆ Zurück nach oben
Sie können Cropper -Optionen mit new Cropper(image, options)
festlegen. Wenn Sie die globalen Standardoptionen ändern möchten, können Sie Cropper.setDefaults(options)
verwenden.
Number
0
0
: Keine Einschränkungen1
: Beschränken Sie die Erntebox so, dass sie die Größe der Leinwand nicht überschreitet.2
: Begrenzen Sie die minimale Leinwandgröße so in den Behälter. Wenn sich die Anteile der Leinwand und des Behälters unterscheiden, werden die minimalen Leinwand in einer der Abmessungen von zusätzlichem Raum umgeben.3
: Beschränken Sie die minimale Leinwandgröße zum Füllen des Behälters. Wenn die Proportionen der Leinwand und des Behälters unterschiedlich sind, kann der Behälter nicht in eine der Abmessungen passen. Definieren Sie den Ansichtsmodus des Cropper. Wenn Sie viewMode
auf 0
festlegen, kann sich die Ernteschachtel außerhalb der Leinwand erstrecken, während ein Wert von 1
, 2
oder 3
das Erntekasten auf die Größe der Leinwand beschränkt. viewMode
von 2
oder 3
beschränkt die Leinwand zusätzlich auf den Container. Es gibt keinen Unterschied zwischen 2
und 3
, wenn die Anteile der Leinwand und des Behälters gleich sind.
String
'crop'
'crop'
: Erstellen Sie eine neue Erntebox'move'
: Bewegen Sie die Leinwand'none'
: tu nichtsDefinieren Sie den Zog -Modus des Cropper.
Number
NaN
Definieren Sie das anfängliche Seitenverhältnis der Erntekiste. Standardmäßig ist es das gleiche wie das Seitenverhältnis der Leinwand (Bildverpackung).
Nur verfügbar, wenn die Option
aspectRatio
aufNaN
eingestellt ist.
Number
NaN
Definieren Sie das feste Seitenverhältnis der Erntekiste. Standardmäßig weist die Erntebox ein kostenloses Verhältnis auf.
Object
null
Die vorhergehaltenen, von Ihnen gespeicherten Kaufmedaten werden bei der Initialisierung automatisch an die setData
-Methode übergeben.
Nur verfügbar, wenn die
autoCrop
-Option auf dentrue
eingestellt war.
Element
, Array
(Elemente), NodeList
oder String
(Selector)''
Fügen Sie zusätzliche Elemente (Container) für die Vorschau hinzu.
Anmerkungen:
aspectRatio
-Option festlegen, stellen Sie sicher, dass das gleiche Seitenverhältnis auf den Vorschau -Container festgelegt ist.overflow: hidden
Stil auf den Vorschau -Container.Boolean
true
Rendern Sie den Cropper erneut, wenn Sie das Fenster ändern.
Boolean
true
Stellen Sie nach der Größenänderung des Fensters den beschnittenen Bereich wieder her.
Boolean
true
Überprüfen Sie, ob das aktuelle Bild ein Cross-Origin-Bild ist.
In diesem Fall wird ein crossOrigin
-Attribut zum klonierten Bildelement hinzugefügt, und zum src
-Attribut wird ein Zeitstempelparameter hinzugefügt, um das Quellbild neu zu laden, um einen Browser -Cache -Fehler zu vermeiden.
Das Hinzufügen eines crossOrigin
-Attributs zum Bildelement hört auf, der Bild -URL ein Zeitstempel hinzuzufügen und das Bild neu zu laden. Die Anforderung (XMLHTTPREquest) zum Lesen der Bilddaten zur Orientierungsüberprüfung erfordert jedoch einen Zeitstempel, um den Cache zu brechen, um einen Browser -Cache -Fehler zu vermeiden. Sie können die checkOrientation
auf false
festlegen, um diese Anfrage zu stornieren.
Wenn der Wert des crossOrigin
-Attributs des Bildes "use-credentials"
lautet, wird das Attribut withCredentials
auf true
festgelegt, wenn die Bilddaten von XMLHTTPrequest gelesen werden.
Boolean
true
Überprüfen Sie die Exif -Orientierungsinformationen des aktuellen Bildes. Beachten Sie, dass nur ein JPEG -Bild exif -Orientierungsinformationen enthalten kann.
Lesen Sie genau den Orientierungswert zum Drehen oder Umdrehen des Bildes und überschreiben Sie dann den Ausrichtungswert mit 1
(Standardwert), um einige Probleme (1, 2) auf iOS -Geräten zu vermeiden.
Erfordert, sowohl die rotatable
als auch die scalable
Optionen gleichzeitig auf true
zu setzen.
Hinweis: Vertrauen Sie dies nicht ständig, da einige JPG-Bilder möglicherweise falsche (nicht standardmäßige) Orientierungswerte haben
Erfordert typisierte Arrays -Unterstützung (dh 10+).
Boolean
true
Zeigen Sie das schwarze Modal über dem Bild und unter der Erntekiste.
Boolean
true
Zeigen Sie die gestrichelten Linien über der Erntekiste an.
Boolean
true
Zeigen Sie den mittleren Indikator über der Erntebox an.
Boolean
true
Zeigen Sie das weiße Modal oberhalb der Erntekiste (Markieren Sie die Erntebox).
Boolean
true
Zeigen Sie den Gitterhintergrund des Behälters.
Boolean
true
Aktivieren Sie das Bild automatisch, wenn Sie initialisiert werden.
Number
0.8
(80% des Bildes)Es sollte eine Zahl zwischen 0 und 1 sein. Definieren Sie die automatische Anbausgröße (Prozent).
Boolean
true
Ermöglichen, das Bild zu verschieben.
Boolean
true
Aktivieren Sie das Bild.
Boolean
true
Aktivieren Sie das Bild.
Boolean
true
Aktivieren Sie das Bild.
Boolean
true
Aktivieren Sie das Bild durch Ziehen der Berührung.
Boolean
true
Aktivieren Sie das Bild durch Mausbewegung.
Number
0.1
Definieren Sie das Zoomverhältnis beim Zoomen des Bildes durch Maus -Wheeling.
Boolean
true
Aktivieren Sie das Erntekasten durch Ziehen.
Boolean
true
Aktivieren Sie die Größe des Erntekasten durch Ziehen.
Boolean
true
Aktivieren Sie den Drag -Modus zwischen "crop"
und "move"
wenn Sie zweimal auf den Cropper klicken.
Benötigt
dblclick
Event Support.
Number
200
Die minimale Breite des Behälters.
Number
100
Die minimale Höhe des Behälters.
Number
0
Die minimale Breite der Leinwand (Bildumschlagsteuer).
Number
0
Die minimale Höhe der Leinwand (Bildverpackung).
Number
0
Die minimale Breite der Erntekiste.
Hinweis: Diese Größe ist relativ zur Seite, nicht zum Bild.
Number
0
Die minimale Höhe der Erntekiste.
Hinweis: Diese Größe ist relativ zur Seite, nicht zum Bild.
Function
null
Eine Abkürzung zum ready
.
Function
null
Eine Abkürzung zum cropstart
-Event.
Function
null
Eine Abkürzung zum cropmove
-Event.
Function
null
Eine Abkürzung zum cropend
-Event.
Function
null
Eine Abkürzung zum crop
.
Function
null
Eine Abkürzung zum zoom
-Event.
⬆ Zurück nach oben
Da beim Laden des Bildes ein asynchroner Prozess vorliegt, sollten Sie die meisten Methoden nach der Bereitschaft aufrufen , außer setAspectRatio
, replace
und destroy
.
Wenn eine Methode keinen Wert zurückgeben muss, wird die Cropper -Instanz (
this
) für die Kettenzusammensetzung zurückgegeben.
new Cropper ( image , {
ready ( ) {
// this.cropper[method](argument1, , argument2, ..., argumentN);
this . cropper . move ( 1 , - 1 ) ;
// Allows chain composition
this . cropper . move ( 1 , - 1 ) . rotate ( 45 ) . scale ( 1 , - 1 ) ;
} ,
} ) ;
Zeigen Sie die Erntekiste manuell.
new Cropper ( image , {
autoCrop : false ,
ready ( ) {
// Do something here
// ...
// And then
this . cropper . crop ( ) ;
} ,
} ) ;
Setzen Sie das Bild- und Erntekasten in seine anfänglichen Zustände zurück.
Löschen Sie die Erntekiste.
URL :
String
HassameSize (optional):
Boolean
false
Ersetzen Sie den SRC des Bildes und bauen Sie den Cropper wieder auf.
Aktivieren Sie den Cropper.
Deaktivieren (einfrieren) den Cropper.
Zerstören Sie den Cropper und entfernen Sie die Instanz aus dem Bild.
OffsetX :
Number
Offsety (optional):
Number
offsetX
.Bewegen Sie die Leinwand (Bildverpackung) mit relativen Offsets.
cropper . move ( 1 ) ;
cropper . move ( 1 , 0 ) ;
cropper . move ( 0 , - 1 ) ;
X :
Number
left
Wert der Leinwandy (optional):
Number
top
-Wert der Leinwandx
.Bewegen Sie die Leinwand (Bildverpackung) auf einen absoluten Punkt.
Number
Zoomen Sie die Leinwand (Bildverpackung) mit einem relativen Verhältnis.
cropper . zoom ( 0.1 ) ;
cropper . zoom ( - 0.1 ) ;
Verhältnis :
Number
Pivot (optional):
Object
{ x: Number, y: Number }
Zoomen Sie die Leinwand (Bildverpackung) auf ein absolutes Verhältnis.
cropper . zoomTo ( 1 ) ; // 1:1 (canvasData.width === canvasData.naturalWidth)
const containerData = cropper . getContainerData ( ) ;
// Zoom to 50% from the center of the container.
cropper . zoomTo ( .5 , {
x : containerData . width / 2 ,
y : containerData . height / 2 ,
} ) ;
Number
Drehen Sie das Bild in relativem Maße.
Benötigt CSS3 2D -Transformationen Unterstützung (dh 9+).
cropper . rotate ( 90 ) ;
cropper . rotate ( - 90 ) ;
Number
Drehen Sie das Bild in absolutem Maße.
Scalex :
Number
1
1
ist, tut es nichts.skaliert (optional):
Number
scaleX
.Skalieren Sie das Bild.
Benötigt CSS3 2D -Transformationen Unterstützung (dh 9+).
cropper . scale ( - 1 ) ; // Flip both horizontal and vertical
cropper . scale ( - 1 , 1 ) ; // Flip horizontal
cropper . scale ( 1 , - 1 ) ; // Flip vertical
Number
1
1
ist, tut es nichts.Skalieren Sie die Abszisse des Bildes.
Number
1
1
ist, tut es nichts.Skalieren Sie die Ordinate des Bildes.
abgerundet (optional):
Boolean
false
true
, um abgerundete Werte zu erhalten.(Rückgabewert):
Object
x
: Der Offset links vom beschnittenen Bereichy
: Der Versatz oben auf dem Kruptenbereichwidth
: Die Breite des beschnittenen Bereichsheight
: Die Höhe des Kruptenbereichsrotate
: die gedrehten Grad des BildesscaleX
: Der Skalierungsfaktor für die Abszisse des Bildes anwendetscaleY
: Der Skalierungsfaktor für die Verordnung des Bildes zu bewerbenAusgabe der endgültigen Daten- und Größendaten der Kaufläufe (basierend auf der natürlichen Größe des Originalbildes).
Sie können die Daten an die serverseitig senden, um das Bild direkt zu erstellen:
- Drehen Sie das Bild mit der
rotate
.- Skalieren Sie das Bild mit den Eigenschaften der
scaleX
undscaleY
Eigenschaften.- Treffen Sie das Bild mit den Eigenschaften
x
,y
,width
undheight
.
Object
getData
-Methode.Ändern Sie die Position und Größe der Krümmung der Fläche mit neuen Daten (basierend auf dem Originalbild).
Hinweis: Diese Methode ist nur verfügbar, wenn der Wert der
viewMode
-Option größer oder gleich1
ist.
Object
width
: Die Strombreite des Behältersheight
: Die Stromhöhe des BehältersAusgabe der Containergrößendaten.
Object
left
: Der Offset links vom Bildtop
: Der Offset oben auf dem Bildwidth
: Die Breite des Bildesheight
: Die Höhe des BildesnaturalWidth
: Die natürliche Breite des BildesnaturalHeight
: Die natürliche Höhe des BildesaspectRatio
: das Seitenverhältnis des Bildesrotate
: Die gedrehten Grad des Bildes, wenn es gedreht wirdscaleX
: Der Skalierungsfaktor für die Abszisse des Bildes, falls skaliertscaleY
: Der Skalierungsfaktor für die Verordnung des Bildes, wenn sie skaliert werdenAusgabe der Bildposition, Größe und anderer verwandter Daten.
Object
left
: Der Versatz links von der Leinwandtop
: Der Offset -Oberteil der Leinwandwidth
: Die Breite der Leinwandheight
: Die Höhe der LeinwandnaturalWidth
: Die natürliche Breite der Leinwand (nur lesen)naturalHeight
: Die natürliche Höhe der Leinwand (nur lesen)Ausgabe der Positions- und Größendaten (Bildverpackung) ausgeben.
const imageData = cropper . getImageData ( ) ;
const canvasData = cropper . getCanvasData ( ) ;
if ( imageData . rotate % 180 === 0 ) {
console . log ( canvasData . naturalWidth === imageData . naturalWidth ) ;
// > true
}
Object
left
: Der neue Offset links von der Leinwandtop
: Der neue Offset -Oberteil der Leinwandwidth
: Die neue Breite der Leinwandheight
: Die neue Höhe der LeinwandÄndern Sie die Position und Größe von Canvas (Image Wrapper) mit neuen Daten.
Object
left
: Der Offset links in der Erntekistetop
: Der Offset oben in der Erntekistewidth
: Die Breite der Erntekisteheight
: Die Höhe der ErntekisteAusgabe der Fruchtboxpositions- und Größendaten.
Object
left
: Der neue Offset links in der Erntekistetop
: Der neue Offset oben in der Erntekistewidth
: Die neue Breite der Ernteschachtelheight
: Die neue Höhe der ErnteschachtelÄndern Sie die Position und Größe der Erntekasten mit neuen Daten.
Optionen (optional):
Object
width
: Die Zielbreite der Ausgangsleinwand.height
: Die Zielhöhe der Ausgangsleinwand.minWidth
: Die minimale Zielbreite der Ausgabe -Leinwand beträgt der Standardwert 0
.minHeight
: Die minimale Zielhöhe der Ausgabe -Leinwand, der Standardwert ist 0
.maxWidth
: Die maximale Zielbreite der Ausgangs -Leinwand, der Standardwert ist Infinity
.maxHeight
Infinity
fillColor
: Eine Farbe zum Füllen von Alpha -Werten in der Ausgabe -Leinwand ist der Standardwert der transparent
.imageSmoothingEnabled
: Set auf Änderungen, wenn Bilder geglättet sind ( true
, Standard) oder nicht ( false
).imageSmoothingQuality
: Stellen Sie die Qualität der Bildglättung, eines von "Low" (Standard), "Medium" oder "High" fest.rounded
: Setzen Sie true
auf die Verwendung von abgerundeten Werten (die Daten der Kumpelbereiche und die Größendaten). Der Standardwert ist false
.(Rückgabewert):
HTMLCanvasElement
Anmerkungen:
fillColor
-Option zuerst festlegen, wenn nicht, der transparente Teil im JPEG -Bild wird standardmäßig schwarz.Browserunterstützung:
Holen Sie sich eine Leinwand aus dem Kruppbild (Verlustkomprimierung). Wenn es nicht zugeschnitten ist, gibt eine Leinwand das gesamte Bild zurück.
Danach können Sie die Leinwand als Bild direkt anzeigen oder htmlcanvaselement.todataurl verwenden, um eine Daten -URL zu erhalten, oder HTMLCanvaselement.toBlob verwenden, um einen Blob zu erhalten und ihn mit FormData auf den Server hochzuladen, wenn der Browser diese API unterstützt.
Vermeiden Sie es, ein leeres (oder schwarzes) Ausgabebild zu erhalten. Möglicherweise müssen Sie die maxWidth
und maxHeight
-Eigenschaften auf begrenzte Zahlen einstellen, da die Größengrenzen eines Leinwandelements sind. Außerdem sollten Sie das maximale Zoomverhältnis (im zoom
) aus demselben Grund einschränken.
cropper . getCroppedCanvas ( ) ;
cropper . getCroppedCanvas ( {
width : 160 ,
height : 90 ,
} ) ;
cropper . getCroppedCanvas ( {
minWidth : 256 ,
minHeight : 256 ,
maxWidth : 4096 ,
maxHeight : 4096 ,
} ) ;
cropper . getCroppedCanvas ( {
fillColor : '#fff' ,
imageSmoothingEnabled : false ,
imageSmoothingQuality : 'high' ,
} ) ;
// Upload cropped image to server if the browser supports `HTMLCanvasElement.toBlob`.
// The default value for the second parameter of `toBlob` is 'image/png', change it if necessary.
cropper . getCroppedCanvas ( ) . toBlob ( ( blob ) => {
const formData = new FormData ( ) ;
// Pass the image file name as the third parameter if necessary.
formData . append ( 'croppedImage' , blob /*, 'example.png' */ ) ;
// Use `jQuery.ajax` method for example
$ . ajax ( '/path/to/upload' , {
method : 'POST' ,
data : formData ,
processData : false ,
contentType : false ,
success ( ) {
console . log ( 'Upload success' ) ;
} ,
error ( ) {
console . log ( 'Upload error' ) ;
} ,
} ) ;
} /*, 'image/png' */ ) ;
Number
Ändern Sie das Seitenverhältnis der Erntekiste.
String
'none'
'none'
, 'crop'
, 'move'
Ändern Sie den Drag -Modus.
Tipps: Sie können den Modus "Crop" und "Move" umschalten, indem Sie auf den Cropper klicken.
⬆ Zurück nach oben
Dieses Ereignis brennt, wenn das Zielbild geladen wurde und die Cropper -Instanz zum Betrieb ist.
let cropper ;
image . addEventListener ( 'ready' , function ( ) {
console . log ( this . cropper === cropper ) ;
// > true
} ) ;
cropper = new Cropper ( image ) ;
Event.Detail.originaleVent :
Event
pointerdown
, touchstart
und mousedown
Event.Detail.Action :
String
'crop'
: Erstellen Sie eine neue Erntebox'move'
: Verschieben Sie die Leinwand (Bildverpackung)'zoom'
: Zoom die Leinwand (Bildverpackung) durch Berührung.'e'
: Die Größe der Ostseite der Erntekiste ändern'w'
: Größen Sie die Größe der Westseite der Erntekiste's'
: Die Größe der Südseite der Erntekiste ändern'n'
: Die Größe der Nordseite der Ernteschachtel ändern'se'
: Größen Sie die Größe der Südostseite der Erntekiste'sw'
: Größen Sie die Größe der Südwestseite der Erntekiste'ne'
: Größen Sie die Größe der Nordostseite der Erntekiste'nw'
: Größen Sie die Größe der Nordwestseite der Erntekiste'all'
: Bewegen Sie die Erntekiste (alle Anweisungen)Dieses Ereignis feuert aus, wenn sich die Leinwand (Bildverpackung) oder die Erntekiste ändern.
image . addEventListener ( 'cropstart' , ( event ) => {
console . log ( event . detail . originalEvent ) ;
console . log ( event . detail . action ) ;
} ) ;
Event.Detail.originaleVent :
Event
pointermove
, touchmove
und mousemove
.Event.Detail.Action : Das Gleiche wie "Cropstart".
Dieses Ereignis feuert aus, wenn sich die Leinwand (Bildverpackung) oder die Erntebox ändert.
Event.Detail.originaleVent :
Event
pointerup
, pointercancel
, touchend
, touchcancel
und mouseup
.Event.Detail.Action : Das Gleiche wie "Cropstart".
Dieses Ereignis feuert aus, wenn sich die Leinwand (Bildverpackung) oder die Erntekiste nicht mehr ändern.
Über diese Eigenschaften finden Sie in der
getData
-Methode.
Dieses Ereignis feuert aus, wenn sich die Leinwand (Bildverpackung) oder die Erntebox ändert.
Anmerkungen:
autoCrop
-Option auf den true
eingestellt ist, wird ein crop
vor dem ready
Ereignis ausgelöst.data
festgelegt ist, wird ein weiteres crop
vor dem ready
Ereignis ausgelöst.Event.Detail.originaleVent :
Event
wheel
, pointermove
, touchmove
und mousemove
.Event.Detail.oldratio :
Number
Event.Detail.Ratio :
Number
canvasData.width / canvasData.naturalWidth
)Dieses Ereignis feuert aus, wenn eine Cropper -Instanz seine Leinwand (Bildverpackung) vergrößert oder herausfindet.
image . addEventListener ( 'zoom' , ( event ) => {
// Zoom in
if ( event . detail . ratio > event . detail . oldRatio ) {
event . preventDefault ( ) ; // Prevent zoom in
}
// Zoom out
// ...
} ) ;
⬆ Zurück nach oben
Wenn Sie einen anderen Cropper mit demselben Namespace verwenden müssen, rufen Sie einfach die statische Methode Cropper.noConflict
an, um darauf zurückzukehren.
< script src =" other-cropper.js " > </ script >
< script src =" cropper.js " > </ script >
< script >
Cropper . noConflict ( ) ;
// Code that uses other `Cropper` can follow here.
</ script >
Bitte lesen Sie unsere beitragenden Richtlinien durch.
Unter den Richtlinien der semantischen Versioning gepflegt.
Mit © Chen Fengyuan
⬆ Zurück nach oben