小编use*_*918的帖子

Swift:从Firebase加载时,图像从纵向旋转到横向

我的部分iOS应用使用Firebase存储来存储和加载用户拍摄/上传的图像.但是,每次我以纵向方式将图片上传到Firebase时,当我稍后从Firebase检索它时,它会以横向方向显示,因此显示不正确.

我已经读过Firebase存储元数据以确定上传图片的正确方向,但它似乎对我不起作用.

任何人都知道如何获取图像上传的方向而无需在应用程序代码中手动旋转它?

谢谢!

编辑代码:

上传:

        let imageMetaData = FIRStorageMetadata()
        imageMetaData.contentType = "image/png"

        var imageData = Data()
        imageData = UIImagePNGRepresentation(chosenImage)!

        let currentUserProfilePictureRef = currentUserStorageRef.child("ProfilePicture")

        currentUserProfilePictureRef.put(imageData, metadata: imageMetaData) { (metaData, error) in
            if error == nil {
                let downloadUrl = metaData?.downloadURL()?.absoluteString
                self.currentUserRef.updateChildValues(["profilePictureUrl": downloadUrl!])
                if (chosenImage.size.width.isLess(than: (chosenImage.size.height))) {
                    self.currentUserRef.updateChildValues(["profilePictureOrientation": "portrait"])
                }
                else {
                    self.currentUserRef.updateChildValues(["profilePictureOrientation": "landscape"])
                }


            } 
        }
Run Code Online (Sandbox Code Playgroud)

检索:

self.currentUserStorageRef.child("ProfilePicture").data(withMaxSize: 20*1024*1024, completion: {(data, error) in
                    var profilePicture = UIImage(data:data!)

                    if(profilePicture?.size.width.isLess(than: (profilePicture?.size.height)!))! {
                        if (pictureOrientation == "landscape") {
                            profilePicture = profilePicture?.rotated(by: Measurement(value: -90.0, …
Run Code Online (Sandbox Code Playgroud)

ios firebase swift firebase-storage

2
推荐指数
2
解决办法
2138
查看次数

Xcode错误:"2个重复的符号,用于架构x86_64"

当我尝试编译并且不知道为什么时,我不断收到此错误

Ld /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Products/Debug/BATTLESHIP normal x86_64
    cd /Users/Itunes/Desktop/Programs/CMPSC122/BATTLESHIP
    setenv MACOSX_DEPLOYMENT_TARGET 10.7
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -L/Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Products/Debug -F/Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Products/Debug -filelist /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Intermediates/BATTLESHIP.build/Debug/BATTLESHIP.build/Objects-normal/x86_64/BATTLESHIP.LinkFileList -mmacosx-version-min=10.7 -stdlib=libc++ -o /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Products/Debug/BATTLESHIP

duplicate symbol __ZlsRNSt3__113basic_ostreamIcNS_11char_traitsIcEEEERK5Point in:
    /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Intermediates/BATTLESHIP.build/Debug/BATTLESHIP.build/Objects-normal/x86_64/main.o
    /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Intermediates/BATTLESHIP.build/Debug/BATTLESHIP.build/Objects-normal/x86_64/Board.o
duplicate symbol __ZlsRNSt3__113basic_ostreamIcNS_11char_traitsIcEEEERK5Point in:
    /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Intermediates/BATTLESHIP.build/Debug/BATTLESHIP.build/Objects-normal/x86_64/main.o
    /Users/Itunes/Library/Developer/Xcode/DerivedData/BATTLESHIP-gefqfgwzntvzlvfyyxoqzmmanjlb/Build/Intermediates/BATTLESHIP.build/Debug/BATTLESHIP.build/Objects-normal/x86_64/Ship.o
ld: 2 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我的标题和.cpp文件是

Board.h
// Board.h - Board class declaration

#pragma once

#include "Point.h"
using namespace std;


#define HIT 'X'
#define SHIP 'S'
#define MISS 'O' …
Run Code Online (Sandbox Code Playgroud)

c++ xcode

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

firebase ×1

firebase-storage ×1

ios ×1

swift ×1

xcode ×1