Servus und einen schönen Sonntag Morgen,
woher der schwarze Balken kommt, ist aus deinem PHP-Code nicht nachvollziehbar; das sieht für mich korrekt und schlüssig aus.
hab mir die Bilder im Ordner Vorschaubilder angesehen und in diesen ist der schwarze Rand bereits vorhanden, muss also am ersten Code liegen, den ich gepostet habe, denn mehr steht in der Datei nicht drin.
Das Hoch/Querformat-Problem wird wohl an deiner Kamera bzw. an deiner Art zu fotografieren liegen. Immerhin drehst du ja die Kamera für Hochformat-Bilder um 90°, und genau diese Drehung müsstest du bei der Weiterverarbeitung wieder rückgängig machen. Wenn du Glück hast, ist die Bildorientierung in den EXIF-Daten vermerkt.
Schade, das heißt ich muss also meine Bilder alle mit einem Grafikprogramm bearbeiten, sind knapp 500 Stück. Ärgerlich, aber da muss ich nun durch, hätte nie gedacht dass PHP auf so etwas achtet.